在Graph API或FQL中获取朋友列表 - 似乎缺少一些朋友

时间:2012-06-21 09:16:10

标签: facebook api facebook-graph-api

'me/friends'图形api或friends FQL表是否有机会仅返回某些朋友?

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

3 个答案:

答案 0 :(得分:25)

在Graph API V1.0中

User object上的/friends电话(例如/me/friends)或friend FQL table的查询应该返回该用户的所有朋友,但

  1. deactivated their accounts
  2. 的人
  3. blocked your app
  4. 的人
  5. 禁止所有平台应用访问其数据的用户。 - 如果用户启用此选项(请参阅下文),则无法通过API访问有关该用户的任何信息,包括他们的基本信息,他们制作的帖子等。不会出现在通过API为您的应用用户的朋友列表。
  6. 如果您发现回复中缺少朋友,那几乎可以肯定是出于其中一个原因,根据我的经验,大多数人都会问这个问题是第三种情况。


    删除平台选项的选项目前位于隐私权设置 - >广告,应用和广告网站 - > '关闭你在Facebook上使用应用程序,插件和网站的能力

    如果您没有通过一个电话接听所有朋友而且您确定这不是因为其中一个原因,请检查您的查询中是否有limit参数 - 如果不是这样,请增加它比你认为应该出现的朋友数量多。

    e.g。允许的最大朋友数为/me/friends?limit=5000,5000

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

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

    如果用户已授予您的应用/friends权限,则对用户对象的user_friends进行的调用将返回已授予您应用的用户的朋友user_friends许可 -

    您可以在Facebook Graph Api v2.0+ - /me/friends returns empty, or only friends who also use my appFacebook's changelog上了解有关从v1.0到v2.0的更改的更多信息

答案 1 :(得分:3)

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

  

更新

参数limit=0返回0个朋友,
要获得所有朋友,您需要设置limit=5000(这是允许的最大数量)

答案 2 :(得分:3)

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

Url:
me/taggable_friends?limit=1&fields=id,name,