1

我想知道是否可以使用 Facebook API 或 Open Graph 和两个用户 ID 来输出共同的朋友?

因为我已经设法做到了,但它只列出了“玩你的游戏”的共同朋友,而不是整个列表。

下面是我创建的功能:

function getMutualFriends($facebook, $uid1, $uid2,$amount=3){
    $random_ids     = array();
    try {
        $param  =   array(
                    'method'  => 'friends.getMutualFriends',
                    'source_uid'    => $uid1,
                    'target_uid'  => $uid2,
                    'callback'=> ''
                );
        $mutualFriends   =   $facebook->api($param);
        if(count($mutualFriends) < $amount){
            $amount = count($mutualFriends);
        }
        $random = pickrandom($mutualFriends,$amount);

        for($i=0; $i<$amount; $i++){
            $random_ids[] = get_name($random[$i]);
        }
        $output = implode(",\n", $random_ids);
        print_r($output);
    //  print_r($mutualFriends);

    }
    catch(Exception $o) {
        print_r($o);
    }
   // return 'None';
}
4

1 回答 1

1

您正在使用的方法(friends.getMutualFriends)属于已弃用的 REST API:

请注意:我们正在弃用 REST API。我们添加了与此调用等效的 Graph API,它是 User 对象的“mutualfriends”连接。对此的示例调用/PROFILE_ID/mutualfriends/FRIEND_ID将返回 PROFILE_ID 与 FRIEND_ID 的共同朋友。

所有你需要知道的就在那里,只需使用User 对象的共同朋友连接

此外,如果您想比较安装了您的应用程序的两个用户,那么您可以获取两个用户的朋友 ( USER_ID/friends) 并比较自己。

于 2012-05-25T14:52:28.590 回答