2011-08-11 175 views
1

我有一个应用程序,用户可以使用Facebook凭证注册自己。现在考虑为每个用户获得离线访问权限。如何使用Facebook API获取朋友的朋友?

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

现在我想,因为我有我的朋友谁已经注册到我的应用程序,这些用户将允许我的应用程序离线访问。我想让我的朋友在一个阵列中,并找到阵列中的每一位朋友的朋友,并加入他们所有的人。这里的问题是我需要删除重复的Facebook用户(可能是太多的朋友朋友的名单),并得到朋友的朋友的最终名单..

所以我可以得到朋友的朋友使用FQL或图形API?


我搜索/通过搜索朋友的朋友读很多的话题上堆栈溢出 ,但没有用的。

注意:这不是已经发布在Stack  上溢出的类似问题。请完整阅读以理解此问题。

+0

为什么-1这个问题? – Vijay

+0

我不知道我是否应该大叫跟踪或嫉妒的男朋友...... –

回答

3

你不能使用FQL表'朋友'来找朋友的朋友,你需要一个有效的访问令牌给每个你没有的朋友。

您可以轻松地使用图API来做到这一点,但这可能需要很长时间。我的猜测是500个朋友平均20分钟。您将需要调用此:

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

首先对原来的用户,然后为他的每一位朋友。 fields=id参数将有助于您收到的数据量,但您可能也需要将此限制设置得更高。将& limit = 5000添加到图形查询中。

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

Facebook没有办法为您排序所有重复项,您需要使用正在使用的编程语言手动执行此操作,但这应该是微不足道的。

祝你好运。