Graph API не будет возвращать религии друзей

У меня есть экран, на котором пользователи могут выбирать друзей в Facebook. После отправки формы я запрашиваю объект профиля из Facebook с определенными полями (например: https://graph.facebook.com/some_id?fields=id,name,religion&access_token=xxx).

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

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


person Matt Huggins    schedule 03.12.2012    source источник
comment
Возможно, ваши друзья не делятся этой информацией с приложениями, которые используют их друзья, т. е. они отключили ее в своих настройках безопасности.   -  person CBroe    schedule 03.12.2012
comment
Спасибо за предложение. Когда я вернусь домой, я создам тестовую учетную запись, в которой религия будет общедоступной, чтобы посмотреть, имеет ли это значение при получении данных этого тестового друга.   -  person Matt Huggins    schedule 03.12.2012


Ответы (1)


После создания двух тестовых учетных записей пользователей оказалось, что для доступа к религии друга через Graph API должно быть выполнено одно из двух условий:

  1. Друг должен сделать информацию о своей религии общедоступной. Например, установить для него значение «Друзья друзей» недостаточно, чтобы по какой-то причине он мог быть получен API, независимо от нашей дружбы.

  2. Друг должен авторизовать разрешение friends_religion_politics приложения. Разрешая это разрешение для своей учетной записи, я не сообщаю Facebook, что хочу разрешить доступ к информации о религии моего друга. Вместо этого я сообщаю Facebook, что хочу предоставить информацию о своей религии другим друзьям, которые запрашивают ее через Graph API.

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

person Matt Huggins    schedule 04.12.2012