Facebook Graph API位置数据丢失,但在FB网站搜索中可见?

时间:2013-11-11 17:39:37

标签: facebook facebook-graph-api

我注意到与FB Graph API的不一致。

假设我已登录(并且具有access_token)用户Bob。 Bob不是用户Jim的朋友。

如果我作为Bob,通过Graph API,请求有关Jim的数据:

https://graph.facebook.com/jim?access_token=blah&fields=location,hometown,name,id,address

我得到了这样的结构:

{
    "id": "1",
    "name": "Jim"
}

请注意,我要求的字段明显丢失。

但是,如果我以Bob身份登录FB网站,然后以搜索登录Jim,我可以在他的“关于”页面上看到他的位置和家乡,即使

这是为什么?我是否需要指定一些额外的令牌权限或我需要求的字段才能从API中获取这些数据(显然是公开的)?

2 个答案:

答案 0 :(得分:0)

如果您使用的是用户访问令牌,那么您可能需要切换到使用通过以下调用检索的应用访问令牌:

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

答案 1 :(得分:0)

陷入同样的​​问题。 据我所知,this page访问令牌必须包含user_location和user_hometown权限。在api explorer中尝试但没有成功 - 仍然无法通过api查看在其个人资料页面上显示此信息的用户的位置信息。

更新:答案herehere表明通过api / app进行的数据访问比通过网页更受限制,以防止网页挖掘。无论您使用用户权限还是应用权限,我都认为是这种情况。