【问题标题】:To Get the Access Token for facebook api获取 facebook api 的访问令牌
【发布时间】:2014-07-18 03:37:02
【问题描述】:

要获取访问令牌,

GET: https://graph.facebook.com/oauth/access_token?
        client_id=YOUR_APP_ID
       &client_secret=YOUR_APP_SECRET
       &redirect_uri=uri

我在 Graph API Explorer 中尝试了以下 GET 方法

/oauth/access_token?client_id=XXXXX&client_secret=XXXXXXXXXXXXX&redirect_uri=http://XYZ.com/

但这里我收到错误:

{
  "error": {
    "message": "Missing authorization code",
    "type": "OAuthException",
    "code": 1
  }
}

你能建议一下,代码参数应该传入什么。

/oauth/access_token?client_id=XXXXXX&client_secret=XXXXXXXXXXXXXXX&redirect_uri=http://XYZ.com/&code=??

【问题讨论】:

    标签: c# facebook-graph-api


    【解决方案1】:

    您的 GET 参数不正确。而是使用这个:

    https://graph.facebook.com/oauth/access_token?client_id=XXXXX&client_secret=XXXX&grant_type=client_credentials
    

    你错过了

    grant_type=client_credentials

    参数/值组合,用于接收访问令牌。

    【讨论】:

    • 通过使用你上面的 url,我得到了类似的响应。 access_token=|SJgcG4272bQmKz2Lbx_K5HRaQYU 但是在下面的 url 中使用这个 access_token,graph.facebook.com/… 现在,我收到如下错误: { "error": { "message": "(#200) 必须有一个有效的 access_token 才能访问这个端点”,“类型”:“OAuthException”,“代码”:200 } }
    • 我和你有同样的问题
    【解决方案2】:

    这将返回一个应用级别的 oauth 令牌,但您尚未引入用于授权权限列表的“scope”参数:

    https://graph.facebook.com/oauth/access_token?client_id=<client-id>&client_secret=<client-secret>&redirect_uri=http://example.com/&scope=<comma-separated-list-of-permissions>&grant_type=client_credentials
    

    有关可用权限的列表,当您从应用程序的 Facebook 资源管理器仪表板中选择“获取访问令牌”时,您可以找到它们 -

    https://developers.facebook.com/tools/explorer/<client-id>/
    

    【讨论】:

      猜你喜欢
      • 2012-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-26
      相关资源
      最近更新 更多