【发布时间】:2017-09-15 17:36:31
【问题描述】:
按照 here 记录的 OAuth 流程,我似乎做对了所有事情,但仍然得到以下 json 响应:
{'generated_at': 'Wed, 19 Apr 2017 12:47:47 +0000', 'host': 'devplatform-devapi-prod-0a016efb', 'code': 3, 'status': 'failure', 'message': 'Authorization failed.', 'data': None}
我已经看到 this 发布了关于同一问题的帖子,但我正在使用更新后的文档,一切似乎都是正确的。
我的第一步似乎没问题,因为我得到了一个有效的响应,包括 API 返回的代码。
问题发生在我尝试将代码交换为令牌的第二次调用中 - 然后它失败了
我的第二个电话是这样的:
self.API_BASE = 'https://api.pinterest.com/v1/'
.
.
.
code = request.GET['code']
.
.
.
url = '{base}oauth/token'.format(base=self.API_BASE)
data = {'grant_type': 'authorization_code',
'client_id': self.client_id,
'client_secret': self.client_secret,
'code': code}
response = requests.post(url, data=data).json()
导致我在顶部发布的错误的响应
【问题讨论】:
-
您是如何获得授权码的?文档中说“要获取您的访问代码,请将您的用户定向到api.pinterest.com/oauth”您的代码中没有任何地方为用户打开网络浏览器。
-
不想发很长的帖子,明明拿到了code,我也验证收到了
-
试试
requests.post(url, params=data) -
也没用,同样的反应:/
-
你试过
Session()吗?
标签: python oauth python-requests pinterest