Как подсчитать общее количество друзей пользователя Facebook на uid
?
Как я могу подсчитать общее количество друзей пользователя Facebook по uid?
Ответы (7)
В таблице user
есть поле friend_count
, которое вы можете запросить.
SELECT friend_count FROM user WHERE uid = me()
Просто замените me()
на UID пользователя, которого вы хотите запросить.
@Скотт
Это очень работает, я не ожидал, что :)
https://graph.facebook.com/fql?q=SELECT%20friend_count%20FROM%20user%20WHERE%20uid%20=%20273103345
Я попытался со случайным идентификатором пользователя, который не является другом в Graph API. Однако для нескольких случайных uid он вернул null, я предполагаю, что это были страницы.
FQL устарел с октября 2014 года. Цитата из часто задаваемых вопросов Facebook:
Начиная со вторника, 22 июля 2014 г., мы теперь возвращаем поле total_count в сводном свойстве в ответе на /v2.2/me/friends.
Конечная точка пользователя/друзей требует разрешения user_friends для возврата фактического списка друзей, которые используют ваше приложение, однако поле количества друзей все равно будет возвращено без предоставленного разрешения user_friends. Пример ответа:
{
"data": [
],
"summary": {
"total_count": 811
}
}
Полный список часто задаваемых вопросов: https://developers.facebook.com/docs/apps/faq#total_friend_count
COUNT
не поддерживается FQL:
SELECT uid2
FROM friend
WHERE uid1 = USERID
Поскольку COUNT
не поддерживается, вам необходимо получить все записи, а затем подсчитать их в любом приложении, выполняющем вызов SQL.
Если вы хотите получить больше информации, например имена, а также количество, вы можете использовать внутренний выбор, чтобы получить расширенную информацию о друге:
SELECT name
FROM user
WHERE uid IN (SELECT uid2
FROM friend
WHERE uid1 = USERID)
Вот связанный вопрос SO:
Ссылки на таблицу Friend:
Запросите эту таблицу, чтобы определить, связаны ли два пользователя вместе как друзья.
Вот мое решение... отлично работает!
$myfriends = $facebook->api('/XXXXXXX152466/friends');
$friendcount = COUNT($myfriends['data']) + 1;
Замените XXXXXXX152466 на идентификатор профиля facebook#.
Использование Facebook PHP SDK вместе с Graph API!
Начиная с Facebook API 2.0
вы не удается получить полный список друзей на Facebook, только частичный список друзей, которые также авторизовали ваше приложение.
Тем не менее, вы все равно можете получить общее количество друзей, Graph API user В /friends есть поле summary
, содержащее число total_count
.
Таким образом, вы можете получить его, используя:
FB.api("/me/friends", function (response) {
if (response && !response.error) {
console.log(response.summary.total_count);
}
});
Есть много способов подсчитать количество друзей, используя Facebook Graph API с Php SDK, из одного, о котором я говорю.
$fbuser=$fb->api('/me/friends');
$access_token = $fb->getAccessToken();
$friend_count=0;
foreach($fbuser['data'] as $friends)
{
$friends_count++;
}
Полное руководство см. в этой статье Поиск друзей в FB. Считать