2013-07-03 69 views
1

我使用Facebook Graph API Explorer从朋友检索状态。查询[username]/statuses会为我自己和某些朋友返回状态,但不会返回其他状态。因此,对于一些用户来说,我得到...Facebook Graph API仅为某些朋友返回状态

{ "data": [ { "id": "10152965008840076", ... } ] }

但也有人只返回...

{ "data": [] }

......即便如此,在Facebook的个人资料页,我可以看到他们的状态。

想这可能是一个权限问题,我启用了以下权限,但无济于事:

  • friends_actions.news
  • friends_activities
  • friends_status
  • read_friendlists
  • read_insights
  • read_mailbox
  • 个read_requests
  • read_stream
  • user_activities
  • user_status

为什么有些用户返回状态,而不是其他人?

回答

4

要获得状态,应该只需要read_stream许可作为https://developers.facebook.com/docs/reference/api/user/描述和https://developers.facebook.com/docs/reference/fql/status

读取用户的状态信息需要read_stream许可。

没有用户朋友的ID,不可能知道原因的确切原因。可能的事情来看看什么是

  • 的朋友已在自己设置(https://www.facebook.com/settings?tab=applications&section=opt_out&view
  • 的朋友有没有状态的对象,但交对象,而不是这样的数据将出现在[用户名] /职位禁用平台与read_stream权限
  • 权限从未真正在您的应用中设置,这发生在开发人员假定应用设置中的“配置权限”是设置权限的位置时。一个简单的方法来揭穿这将是/me/permissions

通话如果上述所有被检查的,然后发送到developers.facebook.com/bugs一个详细的错误报告

+0

用户有状态哪些不是帖子,活动等,可以从'[username]/feed'端点看到。 由于我目前只使用[图形API资源管理器](https://developers.facebook.com/tools/explorer),我通过访问令牌设置了我的权限。图表API资源管理器算作我需要设置应用程序权限的应用程序吗? 用户可能禁用了共享状态。将验证并回报。 – garbados

+0

@garbados如果不知道用户ID或用户墙上出现的实际对象ID,则无法确切地说出问题所在。 – phwd

+1

已验证,所涉及的用户已设置权限,以使其用户的状态无法从API除了他们的代表。接受你的答案。 – garbados