【问题标题】:Facebook Graph API returns statuses for only some friendsFacebook Graph API 仅返回部分朋友的状态
【发布时间】:2013-07-03 17:05:43
【问题描述】:

我正在使用 Facebook Graph API Explorer 从朋友那里检索状态。查询[username]/statuses 会返回我自己和某些朋友的状态,但不会返回其他人的状态。所以,对于某些用户,我得到...

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

但其他人只返回......

{ "data": [] }

...尽管在他们的 Facebook 个人资料页面上,我可以看到他们的状态。

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

  • friends_actions.news
  • friends_activities
  • friends_status
  • read_friendlists
  • read_insights
  • read_mailbox
  • read_requests
  • read_stream
  • user_activities
  • 用户状态

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

【问题讨论】:

    标签: facebook


    【解决方案1】:

    要获得状态,只需要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 权限的 [username]/posts 中
    • 从未在您的应用程序中实际设置权限,当开发人员假设应用程序设置中的“配置权限”是设置权限的位置时,就会发生这种情况。一个简单的方法来揭穿这个问题是打电话给/me/permissions

    如果以上所有内容均已检查,请向developers.facebook.com/bugs 发送详细的错误报告

    【讨论】:

    • 用户的状态不是帖子、活动等,从[username]/feed 端点可见。由于我目前只使用graph API explorer,因此我通过访问令牌设置权限。图形 API 资源管理器是否算作我需要为其设置应用权限的应用?用户可能禁用了共享状态。将核实并报告。
    • @garbados 在不知道用户 id 或用户墙上出现的实际对象 id 的情况下,无法确定问题出在哪里
    • 已验证,相关用户已设置权限,因此除非代表他们,否则无法从 API 访问其状态。接受你的回答。
    • 很好的答案!不知道这个“平台开/关”设置!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多