无法使用Facebook Graph获取公开信息

时间:2014-05-14 20:05:25

标签: facebook facebook-graph-api

我试图使用user_token获取公开个人资料。我注册了FB应用并从页面获取了user_token:https://developers.facebook.com/tools/access_token/ 但是当我尝试获取公开个人资料时https://graph.facebook.com/100000378611443?limit=1000&access_token= {user_token} 我看到一个错误:

{
   "error": {
      "message": "The global ID 100000378611443 is not allowed. Please use the application specific ID instead.",
      "type": "OAuthException",
      "code": 2500
   }
}

但是,如果我在另一个应用程序中使用上述URL中的user_token,我可以成功获取公共用户个人资料。 我究竟做错了什么? 感谢。

4 个答案:

答案 0 :(得分:2)

由于不再允许v2.0的Facebook API应用程序使用全局ID,只需使用应用程序范围的ID。当用户登录您的应用程序时会生成这些ID。

如果您尝试检索当前登录用户的信息,则应使用/me端点以及用户的访问令牌:https://graph.facebook.com/me?access_token={user_token}

请注意,使用这些新的作用域ID,的应用可以从尚未授予该应用权限的用户那里检索任何数据。

干杯

答案 1 :(得分:0)

您仍然可以使用旧版本的Facebook Graph API V1.0,它将一直存在到2015年4月30日。

https://graph.facebook.com/v1.0/100000378611443

答案 2 :(得分:0)

您必须使用访问令牌,而不是用户令牌!您可以在此处使用Graph API Explorer获取一个https://developers.facebook.com/tools/explorer 然后,您必须至少拥有user_about_me权限才能获取配置文件数据。您拥有的许多用户数据权限,以及您获得的许多端点和数据。请记住,从Graph API Explorer获取的访问令牌是短暂的生命 - 在一个小时左右到期。有关令牌及其术语的更多信息,请访问:https://developers.facebook.com/docs/facebook-login/access-tokens

答案 3 :(得分:0)

也发生在我身上,尝试使用" Graph Api Explorer"用户ID获取调试我的应用程序。

从呼叫中获取的用户ID:

 ../<event_id>/likes

不是 REAL 用户ID,而是一种id&#34;加密&#34; (让我用这个词)和access_token。

因此,如果您想在GAE上测试该用户ID,您还需要指定访问令牌:

https://graph.facebook.com/<user_id>?access_token=<application_access_token>