Pinterest 的官方 OAuth2 流程看似 returns 一个无效的访问令牌
Pinterest's official OAuth2 flow seemingly returns an invalid access token
我按照 Pinterest 的说明进行了 authenticate a user,在完成第 2 步后,我手里拿着一个访问令牌。但是,当我使用此访问令牌进行 API 调用时,我得到以下响应:
{"status": "failure", "code": 3, "host": "coreapp-devplatform-devapi-179", "generated_at": "Sat, 26 Sep 2015 15:11:35 +0000", "message": "Authorization failed.", "data": null}
当我使用 Token Generator 时,API 调用成功。在这两种情况下,我都尝试过:
https://api.pinterest.com/v1/me/?access_token=<YOUR-ACCESS-TOKEN>
有什么想法吗?
更新: 来自 Pinterest 的 Zack Argyle 刚刚发推文称他们正在努力解决这一问题。 https://twitter.com/zackargyle/status/648547619229138944
对于那些在 post 请求中请求 access_token 时遇到问题的人,在第二步
中也包括 client_secret
https://developers.pinterest.com/docs/api/authentication/
即请求此端点 https://api.pinterest.com/v1/oauth/token 时的 post 参数将是:
grant_type 必须是 authorization_code
client_id 这是您的应用 ID。
client_secret 这是您的应用秘密
code 传递给您的重定向 URI 的授权码
Pinterest 的 Zack Argyle 刚刚发推文说他们部署了一个修复程序来解决我描述的问题:
https://twitter.com/zackargyle/status/648602180002312192
总结一下:
- 按照 https://developers.pinterest.com/docs/api/authentication/
上的说明进行操作
- 不是在第一个而是在第二个请求中传递 client_secret
- 在第一个请求中使用response_type=code
我按照 Pinterest 的说明进行了 authenticate a user,在完成第 2 步后,我手里拿着一个访问令牌。但是,当我使用此访问令牌进行 API 调用时,我得到以下响应:
{"status": "failure", "code": 3, "host": "coreapp-devplatform-devapi-179", "generated_at": "Sat, 26 Sep 2015 15:11:35 +0000", "message": "Authorization failed.", "data": null}
当我使用 Token Generator 时,API 调用成功。在这两种情况下,我都尝试过:
https://api.pinterest.com/v1/me/?access_token=<YOUR-ACCESS-TOKEN>
有什么想法吗?
更新: 来自 Pinterest 的 Zack Argyle 刚刚发推文称他们正在努力解决这一问题。 https://twitter.com/zackargyle/status/648547619229138944
对于那些在 post 请求中请求 access_token 时遇到问题的人,在第二步
中也包括 client_secrethttps://developers.pinterest.com/docs/api/authentication/
即请求此端点 https://api.pinterest.com/v1/oauth/token 时的 post 参数将是:
grant_type 必须是 authorization_code
client_id 这是您的应用 ID。
client_secret 这是您的应用秘密
code 传递给您的重定向 URI 的授权码
Pinterest 的 Zack Argyle 刚刚发推文说他们部署了一个修复程序来解决我描述的问题: https://twitter.com/zackargyle/status/648602180002312192
总结一下:
- 按照 https://developers.pinterest.com/docs/api/authentication/ 上的说明进行操作
- 不是在第一个而是在第二个请求中传递 client_secret
- 在第一个请求中使用response_type=code