如何使用Facebook API获取朋友的朋友?

时间:2011-08-11 10:37:56

标签: facebook authentication facebook-graph-api facebook-fql

我有一个应用程序,用户可以使用Facebook凭据注册自己。现在考虑为每个用户获得离线访问权限。

我知道我可以使用Graph API获取我的朋友。对于每个注册的用户,我将fbuid存储到我的数据库中。

现在我想,因为我有我的朋友已经注册了我的应用程序,那些用户会允许我的应用程序进行离线访问。我想把我的朋友放在一个数组中,只是找到阵列中每个朋友的朋友并加入他们所有人。问题是我需要删除重复的Facebook用户(可能是太多的朋友)朋友的名单)并获得朋友朋友的最终名单..

我可以使用FQL或图谱API获取朋友的朋友吗?


我通过搜索朋友的朋友搜索/阅读了有关Stack Overflow的大量主题,但没有用。

注意:这不是Stack Overflow上发布的类似问题。请完整阅读以理解这个问题。

1 个答案:

答案 0 :(得分:3)

您无法使用FQL表'朋友'为了得到朋友的朋友,你需要一个有效的访问令牌给你没有的朋友。

您可以轻松地使用图形API执行此操作,但可能需要很长时间。我的猜测是500名朋友平均20分钟。你需要打电话给:

https://graph.facebook.com/USER_ID?fields=id

首先是原始用户,然后是他的每个朋友。 fields=id参数将有助于您收到的数据量,但您可能还需要将限制设置得更高。在图表查询中添加& limit = 5000。

为了节省时间,您可以使用 Batch Requests 。首先为原始用户调用friends连接,然后为他的所有朋友生成批量请求。 所有这些都会产生大量数据,因此动态执行可能不是一个好主意。

Facebook无法为您排序所有重复项,您需要使用您正在使用的编程语言手动完成,但这应该是微不足道的。

祝你好运。