2011-08-11 174 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沒有辦法爲您排序所有重複項,您需要使用正在使用的編程語言手動執行此操作,但這應該是微不足道的。

祝你好運。