坚持美味的教程,如何获得“主动访问令牌”?

时间:2013-01-22 18:20:34

标签: android facebook-graph-api oauth

标题几乎总结了一下,我试图在Graph API资源管理器中测试我的Open Graph Actions但是当我发布到/ me / mynamespace:myaction时,我得到了这个错误(使用访问令牌,图形API资源管理器)为我生成,我只询问了publish_actions)

{
  "error": {
    "message": "(#15) This method must be called with an app access_token.", 
    "type": "OAuthException", 
    "code": 15
  }
}

我完成了我的作业并搜索了它,找到一个合适的访问令牌以解决这个问题,通过APPID | APP_SECRET格式,但使用我得到

{
  "error": {
    "message": "An active access token must be used to query information about the current user.", 
    "type": "OAuthException", 
    "code": 2500
  }
}

关于如何解决这个问题的任何想法?

为了给出更多的上下文,为Android facebook应用程序创建了图形操作。

2 个答案:

答案 0 :(得分:1)

如果没有来自登录您应用的用户的用户访问令牌,您就无法发布到/me,“我”是“当前用户”的占位符。

听起来这里发生了两件事:

  1. 您已将Open Graph操作配置为要求发布App Access令牌(这是操作的配置选项
  2. 当您遇到该错误时,您尝试使用应用访问令牌但未将/me/mynamespace:myaction更改为/<USER ID>/mynamespace:myaction
  3. 一些注意事项:

    • 永远不要将应用访问令牌放入您的客户端代码中;它可用于修改应用程序设置。如果您确实需要通过应用访问令牌才能发布操作,则需要为您的应用实施服务器端组件,使用应用访问令牌生成请求
    • 您可能需要更改操作的打开图表操作设置,以便可以使用用户访问令牌发布

答案 1 :(得分:0)

您发送APP_ID|SECRET作为应用访问令牌的方法是错误的。要获取应用访问令牌,您需要通过此端点请求它:

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

请参阅here for more details