簡體   English   中英

如何使用他們的API獲取Facebook上的共同朋友列表?

[英]How do I get the list of mutual friends on Facebook using their API?

我正在嘗試獲取自己和另一個用戶的共同朋友列表,但我沒有在文檔中找到的API。 要么我得到一些奇怪的權限錯誤,我只能得到我的朋友列表,沒有其他用戶或我得到以下錯誤:

Fatal error: Call to a member function friends_getMutualFriends() on a non-object in /home/app.php on line 27 

是否有一種標准方式用於獲取共同朋友的總數或至少是我朋友的朋友ID列表?

這將列出共同的朋友:

$mutual_friends = $facebook->api('/me/mutualfriends/friendid');

好的...這個給了我一個真正的艱難時期。 我設法使用Facebook JS SDK。 以下是其他人想要這樣做的片段:

    FB.api(
          {
            method: 'fql.query',
            query: 'SELECT id FROM profile WHERE id IN (SELECT uid2 FROM friend WHERE uid1=me())'
          },
          function(response) {
            $.each(response, function(json) {
                console.info(response[json].id);
                        FB.api(
                          {
                            method: 'friends.getMutualFriends',
                            target_uid: 'INSERT ANOTHER FRIEND ID HERE'
                          },
                          function(response) {
                            console.info(response);
                          }
                          );
                return false;
            });

          }
        );

這是2016 / JAN工作

https://graph.facebook.com/v2.5/[USER_FRIEND_ID]?limit=100&fields=context.fields(mutual_friends.limit(100))&access_token=[YOUR_USER_TOKEN]

結果是Json與你的共同朋友。 在Graph v2.4和v2.5中工作正常。

PS:如果你搜索ALL_mutual_friend是沒有相同應用程序的朋友,那么Mutual_friends - >來自令牌會話的用戶和來自查詢中的另一個用戶已經自動化了應用程序。

facebook中的新字段user.context https://developers.facebook.com/docs/graph-api/reference/user-context/

(使用Graph Explorer進行測試)

facebook圖測試相互

我有同樣的問題。 雖然回答問題已經很晚了,但它會對某些人有所幫助。 這就是回答這個問題的原因。

Legend給出的回答是只給朋友共同的朋友。 我給了用戶的共同朋友(朋友的朋友或朋友)的解決方案。

你問mutual friends of myself and another user (不僅是朋友)和PHP的mutual friends of myself and another user 以下是解決方案:

$ source_id =當前用戶

$ target_id =朋友的朋友或朋友

$query="SELECT uid, name, work FROM user WHERE uid IN 
(SELECT uid2 FROM friend WHERE uid1 = $source_id and uid2 IN (SELECT uid2 FROM friend WHERE uid1 = $target_id) ) ORDER BY name";
            $freinds_list=$this->facebook->api(array('method'=>'fql.query',
                    'query'=>$query));

好吧,它實際上是friends.getMutualFriends()

在這里玩一玩。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM