12

我使用FB圖形API使用,以獲得我的朋友的朋友列表的朋友:Facebook的圖形api..get的朋友

https://graph.facebook.com/<id>/friends?access_token=<token> 

現在奇怪的是,這種方式更適合我的一些朋友並不適用於其他人。有人可以告訴我爲什麼會發生這種情況並可能解決問題嗎?

在情況下,它不工作,我得到以下信息: 「無法查找YYYYYY的所有朋友 只能用於查找登錄的用戶(XXXXX),或 朋友登錄的用戶的與適當的許可「

而且我再說一遍,我可以使用上面的URL獲取我的一些朋友的朋友列表。 這裏提到了什麼權限?

回答

11

隱私權限。

作爲用戶,我控制誰可以看到我的好友列表。如果我選擇「僅限朋友」,那麼只有我的朋友可以看到我的列表,而不是「朋友的朋友」

登錄Facebook,在右上角點擊帳戶 - >隱私設置, 然後點擊「查看設置」在「在Facebook上連接」

「看看你的朋友列表」是什麼控制這一點。

編輯:對不起,不得不考慮一分鐘。

可以通過標準的Facebook網頁界面看到你朋友的朋友。你的應用不是你。即使您已授予應用訪問您的帳戶的權限,但您的朋友還沒有。在這種情況下,除非將其設置爲「所有人」,否則您不會取回朋友的朋友。你的應用不是朋友的朋友。

我相信就是這個原因。另一個原因可能是他們的API被稱爲越野車。你總是可以打開http://bugs.developers.facebook.net/的錯誤報告,如果我的猜測是正確的,有人會讓你知道。

+0

是的,我做了這篇文章後立即檢查。即使我可以在臉書網站上看到我的朋友的朋友,但是API調用並不會獲取它們。只有一些電話成功。這是不一致的。 – Krishnamurthy 2011-04-17 04:44:59

+0

對不起,沒有想到一路通過。請參閱編輯。 – 2011-04-17 04:54:28

+0

感謝Brian的迴應。我實際上並沒有使用Facebook應用程序檢索這些信息。我使用我的訪問令牌進行普通的舊HTTP調用(請參閱上面張貼的URL)。我認爲這比Facebook應用更接近「我」。這讓我感到困惑。 – Krishnamurthy 2011-04-17 05:12:41

1

確實。這都是http請求。但是,如果我點擊鏈接顯示約翰的朋友,Facebook會列出他們,如果我使用圖表api和令牌,則不會。無論哪種方式,這是我問,但API是不一致的。

8

我有朋友的朋友(有限)。我有同樣的問題。雖然回答問題已經很晚了,但它會幫助某人。這就是回答這個問題的原因。

我們可以得到那些是應用程序用戶的朋友的朋友。 試試這個fql查詢。

$ fb_id =需要朋友朋友的用戶標識。

$query="SELECT uid, name, work_history FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 IN (SELECT uid FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = $fb_id) and is_app_user=1))"; 
     $user_info=$facebook->api(array('method'=>'fql.query', 
        'query'=>$query)); 
相關問題