Как получить друзей моих друзей с помощью Facebook API?

У меня есть приложение, в котором пользователи могут зарегистрироваться, используя учетные данные Facebook. Теперь рассмотрим для каждого пользователя я получаю разрешение на автономный доступ.

Я знаю, что могу найти своих друзей с помощью Graph API. Для каждого зарегистрированного пользователя я сохраняю fbuid в своей базе данных.

Теперь я думаю, что, поскольку у меня есть друзья, которые зарегистрировались в моем приложении, и эти пользователи разрешили бы моему приложению доступ в автономном режиме. Я подумал о том, чтобы собрать своих друзей в массиве и просто найти друзей каждого друга в массиве и присоединиться ко всем им. Здесь проблема в том, что мне нужно удалить пользователей Facebook, которые повторяются (могут быть друзья в слишком многих список друзей) и получить окончательный список друзей друзей..

Могу ли я получить список друзей моего друга с помощью FQL или Graph API?


Я искал / читал множество тем на Stack Overflow, ища друзей друзей, но бесполезно.

Примечание. Это не те вопросы, которые уже были опубликованы в Stack Overflow. Пожалуйста, прочитайте полностью, чтобы понять этот вопрос.


person Vijay    schedule 11.08.2011    source источник
comment
Не знаю, кричать ли мне о преследовании или о ревнивом парне...   -  person Ryan Ternier    schedule 08.09.2011


Ответы (1)


Вы не можете использовать таблицу FQL «друзья», чтобы получить друзей друзей, вам нужен действительный токен доступа для каждого друга, которого у вас нет.

Вы можете легко сделать это с помощью графического API, но это, вероятно, займет много времени. Я предполагаю, что в среднем 20 минут для 500 друзей. Вам нужно будет вызвать это:

https://graph.facebook.com/USER_ID?fields=id

Сначала для исходного пользователя, а затем для каждого из его друзей. Параметр fields=id поможет с объемом получаемых данных, хотя вам, вероятно, также потребуется установить более высокий лимит. Добавьте &limit=5000 к запросу графа.

Чтобы сэкономить время, вы можете использовать пакетные запросы. . Сначала вызовите соединение друзей для исходного пользователя, а затем сгенерируйте пакетный запрос для всех его друзей. Все это будет генерировать много данных, поэтому делать это на лету, вероятно, не очень хорошая идея.

Facebook не может отсортировать все дубликаты за вас, вам нужно будет сделать это вручную с помощью языка программирования, который вы используете, но это должно быть тривиально.

Удачи.

person DannyKK    schedule 11.08.2011