Как получить список всех друзей пользователя?
Я создаю приложение, используя Facebook Graph API v.20.
Первое, что нужно сделать, это экспортировать полный список друзей от пользователя (ID, name and picture
) в файл CSV.
Это возможно?
1 ответ
Краткий ответ: Нет.
Справочная документация по Graph API v2.0 подразумевает, что ваше приложение сможет получить доступ (по крайней мере через API) к тем из друзей пользователя, которые сами использовали ваше приложение и разрешили вашему приложению доступ к своему списку друзей:
права доступа
Токен доступа пользователя с
user_friends
требуется разрешение для просмотра друзей текущего человека.Это вернет только тех друзей, которые использовали (через Facebook Login) приложение, сделавшее запрос.
Если друг человека отклоняет
user_friends
разрешение, этот друг не будет отображаться в списке друзей для этого человека.
@ user664833 указал некоторые пояснения к политике в комментарии ниже:
Начиная с 30 апреля 2014 г. для API Facebook версии 2.0: (1) список друзей больше не является частью набора разрешений по умолчанию и имеет собственное разрешение: запрос доступа к списку друзей пользователя теперь является отдельным разрешением, которое должно запрашивать ваше приложение, Новое разрешение называется user_friends. (2) Список друзей теперь возвращает только друзей, которые также используют ваше приложение: список друзей, возвращенных через конечную точку /me/friends, теперь ограничен списком друзей, которые авторизовали ваше приложение. https://developers.facebook.com/docs/apps/changelog - URL-адрес, доступный пользователям FB, зарегистрированным как разработчики - user664833 10 июня в 5:50
На самом деле, URL кажется общедоступным, так как я могу просматривать его, не входя в систему. Журнал изменений также объясняет, почему некоторые приложения все еще могут просматривать всех друзей, как указал @SimonCross:
Для приложений, которые существовали до 30 апреля 2014 года, выполнение вызова API без указания номера версии ("unversioned") эквивалентно вызову v1.0 API.
Для приложений, созданных 30 апреля 2014 года или после этой даты, выполнение вызова API без указания номера версии эквивалентно вызову v2.0 API.
Приложения, которые были неактивны или имеют дату создания 30 апреля 2014 года или после этой даты, не смогут выполнять вызовы API версии 1.0. Они должны использовать v2.0.