【问题标题】:Unable to authorise with Pinterest API Oauth无法使用 Pinterest API Oauth 进行授权
【发布时间】:2015-12-28 12:55:34
【问题描述】:

我正在尝试按照此处的 Pinterest API 说明进行操作:https://developers.pinterest.com/docs/api/authentication/

我可以通过以下 URL 完成第一步,获取访问代码: https://api.pinterest.com/oauth/?response_type=code&redirect_uri=https://localhost/&client_id=XXXXXXXXXXXXX&client_secret=YYYYYYYYYYYYYYYYY&scope=read_public,write_public&state=myystatestring

这给了我代码:https://localhost/?code=ZZZZZZZZZZZZ&state=mystatestring

但是,当我尝试完成文档中的第二步“为访问令牌交换授权代码”(使用发布请求)时,我无法授权。使用这个命令:

curl --data "grant_type=authorization_code&client_id=XXXXXXXXXXXXXXX&code=ZZZZZZZZZZZ" https://api.pinterest.com/v1/oauth/token

我明白了:

{"status": "failure", "code": 3, "host": "coreapp-devplatform-devapi-171", "generated_at": "2015 年 9 月 30 日星期三 16:21:26 +0000" , "message": "授权失败。", "data": null}

我也尝试在 Python 中使用 requests 库,但结果相同。我还注意到,在第一步中,您可以将“code”更改为“token”并获得包含“access_token=”的结果,但我不能交换它或直接使用它来访问。

非常感谢任何指导!

【问题讨论】:

    标签: python api curl oauth pinterest


    【解决方案1】:

    我知道已经过去了很多时间,但是第二个 URL 必须类似于 https://api.pinterest.com/v1/oauth/token?grant_type=authorization_code&client_id=XXXXXXXXXXX&client_secret=XXXXXXXXXXXXX&code=XXXXXXXXXXXX

    在原始帖子中缺少应用程序密码

    【讨论】:

      【解决方案2】:

      实际上我现在看到这个问题昨天已经被问及回答了,在这个问题上:Auth Exception in Pinterest API

      “文档有误。您必须在此步骤(第 2 步)中包含您的 client_secret,而不是第 1 步。因此将“&client_secret =”添加到 postStr。– Zack Argyle”

      一旦我改成这个,它就完美地工作了:

      curl --data "grant_type=authorization_code&client_id=XXXXXXXXXXXXXXX&code=ZZZZZZZZZZZ&client_secret=YYYYYYYYYYYYYYYYYY" https://api.pinterest.com/v1/oauth/token

      回复:

      {“access_token”:“token_string_here”,“token_type”:“bearer”,“范围”:[“read_public”,“write_public”,“read_private”,“write_private”,“read_write_all”]}

      谢谢扎克!

      【讨论】:

      • 另外,请确保不要将您的 client_secret 添加到第一步 URL 中。我知道,这个答案中提到了这一点,但应该强调这一点,因为这可能会导致安全问题。 (想想人们在您的、已审核的、应用名称等中提出请求)
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-08-13
      • 1970-01-01
      • 2012-02-25
      • 2017-09-15
      • 2016-04-17
      • 2013-03-14
      • 2011-04-13
      相关资源
      最近更新 更多