Facebook Graph API - получить информацию о друзьях - PullRequest
6 голосов
/ 01 апреля 2011

Я пытаюсь выяснить, как получить информацию о друзьях пользователей, используя Graph API или FQL

. Просто для тестирования я хочу, чтобы мои друзья education_histroy.

.что я создал тестовое приложение, запросил расширенные разрешения с помощью

scope=offline_access,manage_friendlists,friends_work_history,
      friends_education_history,friends_about_me

и получил токен доступа для игры с API.

Это прекрасно работает, когда я запрашиваю текущего пользователя, используя /me.Но он ничего не возвращает моим друзьям.

Я предполагал, что если я запрошу, скажем, friends_work_history, то дополнительное поле (work_history) появится внутри объекта друга, когда я сделаю запрос по идентификатору друга:

https://graph.facebook.com/FRIEND_ID&access_token=TOKEN

Но я вижу только основную информацию об этом пользователе (друге).

Затем я попытался запросить это поле специально:

https://graph.facebook.com/FRIEND_ID?fields=work&access_token=TOKEN

Без удачи снова.Возвращает только идентификатор друга ..

Я пытался получить доступ к этой информации с помощью FQL:

https://api.facebook.com/method/fql.query?query=select+work_history+from+user+where+uid+in+(FRIEND_ID)&access_token=TOKEN

Возвращает work_history = TRUE вместо массива.И этот друг определенно определил историю работы.

Может ли кто-нибудь помочь мне понять, как получить информацию о друзьях с помощью моего приложения и расширенных разрешений?

Ответы [ 7 ]

7 голосов
/ 17 октября 2011

Graph API - разумный выбор в большинстве случаев.Чтобы получить информацию о ваших друзьях, вам нужно сначала получить от пользователя некоторые расширенные разрешения.Затем вы можете получить гораздо больше информации, кроме основных.

Ниже приведен список расширенных разрешений, связанных с друзьями различного рода информация

friends_about_me        
friends_activities      
friends_birthday
friends_checkins        
friends_education_history       
friends_events
friends_games_activity      
friends_groups      
friends_hometown
friends_interests       
friends_likes       
friends_location
friends_notes       
friends_online_presence     
friends_photo_video_tags 
friends_photos      
friends_relationship_details        
friends_relationships
friends_religion_politics       
friends_status      
friends_subscriptions
friends_videos      
friends_website     
friends_work_history

Надеюсь, это поможет:)

2 голосов
/ 17 августа 2012

Я боролся с этим весь день сам, и я думаю, что я понял это, нигде в документации Facebook (что я нашел) это не ясно. И я не верю, что другие ответы на самом деле ответили на ваш вопрос, похоже, вы правильно запросили разрешения. Во всяком случае, чтобы запросить информацию, которую вы ищете, пинг API, как это:

https://graph.facebook.com/userid/friends?fields=work&access_token=ACCESSTOKENHERE

Это вернет вам всю информацию о друзьях в одном длинном ответе JSON.

Это немного сбивает с толку, потому что запрашиваемые разрешения - это не то же самое, что вам нужно для запроса API.

Приведенный выше запрос вернет идентификаторы друзей с историей работы. Вы можете добавить запятые к параметру fields, чтобы включить дополнительную информацию, такую ​​как name, но тогда вызовы / ответы API в конечном итоге займут много времени.

1 голос
/ 24 марта 2012

С этот ответ на другой вопрос : у меня сработал звонок "я / друзья? Поля = работа"!

1 голос
/ 02 апреля 2011

http://developers.facebook.com/docs/reference/api/user/

вы можете получить все поля, упомянутые здесь. Чтобы получить работу, вам нужно иметь user_work_history или friends_work_history permission

в ссылке указано, какие разрешения необходимо получить, прежде чем вы получите информацию, и еще одна вещь, которую пользователь должен разрешить вашему приложению, это заставит ваше приложение получать информацию.

0 голосов
/ 23 июня 2017

Я не могу получить длинные данные json из списка друзей, используя ниже API https://graph.facebook.com/userid/friends?fields=work&access_token=ACCESSTOKENHERE

Возвращает только после ..

{
   "data": [

   ],
   "summary": {
      "total_count": 428
   }
}

что не так с API выше.

0 голосов
/ 22 июня 2015

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

FB.api ('/ me / taggable_friends', функция (ответ) { for (var i = 0; i

До этого в вашей учетной записи разработчика было создано приложение-> перейдите в раздел Инструменты и поддержка-> Проводник API графика-> нажмите Получить токен В этом окне нажмите user_tagged_places и нажмите Получить токен доступа. Вы получите список друзей.

0 голосов
/ 09 июля 2014

Я бы посоветовал вам перейти к http://developers.facebook.com/docs/reference/api/user/, как и большинство других, но в качестве общего совета используйте friends_education_history как способ узнать историю друга.

P.S: Незначительная орфографическая ошибка в исходном вопросе, которая должна быть отредактирована. "Education_histroy." = образование_история во второй строке вашего основного абзаца.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...