我正在尝试使用Python的requests-oauth库向Pocket发出请求。不幸的是,使用这个库的描述不是很全面,我也是使用oauth2的新手。一般来说,我理解它背后的过程,但仍然无法转换它以获得工作请求。
我正在寻找的是更好的文档或一些使用requests-oauth2的综合示例。有谁知道。
特别是当我的本地计算机上的脚本发出请求而不是Web应用程序发出请求时,我不明白使用什么redirect_url。
答案 0 :(得分:8)
我能找到的最好的信息来源是Github上的requests-oauth2项目的文档(当然还有源代码):
该文档还包含一个“有趣的读物”部分,其中包含一些指向其他教程的链接。有关OAuth2流程的一般概述,请查看本教程:
当然还有“老式”python-oauth2库,它有很好的文档记录:
该模块的文档包含Twitter API的三脚认证示例。
关于 redirect_url 字段:通常,您可以使用此处所需的任何网址(甚至是http://localhost/my/endpoint
等本地地址),OAuth服务器只会发出 HTTP 303 在验证他之后将请求重定向到客户端,然后在客户端进行处理。但是,某些API服务(例如Twitter)将要求您事先指定redict_url并拒绝某些URL(例如基于IP的URL)。
答案 1 :(得分:2)
如果您是请求Python库的粉丝,我建议使用requests-oauthlib。它有great documentation和活跃的开发人员。
通常,您在API提供商网站上的应用程序设置中设置redirect_url
。看起来Pocket只支持基于浏览器的身份验证,因此您需要一个Web浏览器来生成一个访问令牌,然后您可以将其嵌入到脚本中。