7

'me/friends'图形 api 或friendsFQL 表是否有可能只返回一些朋友?

我检查了结果,它比我在 facebook.com 上看到的数量略少

4

3 回答 3

25

图 API V1.0 中

/friends用户对象(例如/me/friends)的调用或对friendFQL 表的查询应返回该用户的所有朋友,除了

  1. 那些已停用其帐户的人
  2. 那些屏蔽了你的应用的人
  3. 那些已禁用所有平台应用程序访问其数据的人。- 如果用户启用此选项(见下文),您将无法通过 API 访问有关该用户的任何信息,包括他们的基本信息、他们发布的帖子等。他们不会出现在您的应用用户的朋友列表中API。

如果您发现回复中缺少朋友,那几乎可以肯定是由于其中一个原因,根据我的经验,大多数问这个问题的人都在问第三种情况。


移除平台选项的选项目前位于隐私设置 -> 广告、应用和网站 -> '关闭您在 Facebook 上下使用应用、插件和网站的能力

如果您没有在一次通话中获得所有朋友,并且您确定这不是因为其中一个原因,请检查您limit的查询中是否有一个参数 - 如果它少于您认为应该的朋友数量,请增加它出现。

例如/me/friends?limit=5000,对于允许的最大好友数,5000

请注意,朋友数将包括无法在列表中检索到的用户(例如friend_count用户 FQL 表的字段)

在 Graph API V2.0 或更高版本中

/friends如果用户已授予您的应用程序权限,则对 User 对象的调用将user_friends返回该用户的朋友,这些朋友也已授予您的应用程序user_friends权限 -

您可以在 Facebook Graph Api v2.0+ 中阅读有关从 v1.0 到 v2.0 的更改的更多信息- /me/friends 返回为空,或者只有也使用我的应用程序的朋友或Facebook 的更改日志

于 2012-06-21T09:21:44.770 回答
3

您需要传递一个限制参数。
'me/friends/?limit=0'它会返回你所有的朋友。

更新

该参数limit=0返回0个好友,
要获取所有好友,需要设置limit=5000(允许的最大数量)

于 2012-06-21T10:36:54.133 回答
3

随着 的引入Facebook Graph API 2.0,访问用户的朋友列表被删除,并且仅限于使用相同应用程序的朋友。然而,Facebook 添加了两个新的 API 以允许检索朋友姓名(以及间接的朋友数)。两个新的 API 是taggable_friendsinvitable_friends

Url:
me/taggable_friends?limit=1&fields=id,name,
于 2014-11-12T14:17:11.520 回答