API Facebook — ошибка возврата всех общих друзей

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

Теперь я хочу протестировать API facebook для всех общих друзей, отправив следующие данные:

https://graph.facebook.com/v2.8/[user2_userID] /all_mutual_friends?access_token=[User1_access_token]&appsecret_proof=[app_secret_proof_created_by_hashing_token_and_app_secret]

Это для того, чтобы получить общих друзей между user1 и user2, но я получаю следующую ошибку: -

{
  "error": {
    "message": "(#100) Tried accessing nonexisting field (all_mutual_friends) on node type (User)",
    "type": "OAuthException",
    "code": 100,
    "fbtrace_id": "AlCoK/9o/6h"
  }
}

Я даже пробовал с реальными пользователями, думая, что у тестовых пользователей могут быть некоторые проблемы, но я получаю ту же ошибку. Может кто-нибудь сказать мне, что именно неправильно я здесь делаю? В документе сказано то же самое. https://developers.facebook.com/docs/graph-api/reference/user-context/all_mutual_friends

Заранее спасибо.


person Akshat    schedule 13.10.2016    source источник


Ответы (1)


для mutual_friends

{user-id}?fields=context.fields(mutual_friends)

для all_mutual_friends

{user-id}?fields=context.fields(all_mutual_friends.limit(100))

Разрешения

  • Действительный токен доступа пользователя с разрешением user_friends требуется для просмотра общих друзей других друзей, использующих приложение.
  • Пользователь в запросе и пользователь сеанса должны предоставить приложению разрешение user_friends.
  • Идентификатор будет возвращен для общего друга только в том случае, если данный пользователь установил ваше приложение и предоставил разрешение user_friends.
  • Если вы хотите вызвать эту конечную точку от имени двух пользователей приложения, которые не являются друзьями, вы должны указать параметр appsecret_proof вместе с токеном доступа пользователя при выполнении запроса. Это означает, что вы должны вызывать эту конечную точку со своего сервера.
  • Использование этого поля требует проверки со стороны Facebook, прежде чем оно может быть использовано в рабочей среде разработчиками вашего приложения.
person Harsha M V    schedule 13.10.2016
comment
Спасибо! Мне пришлось изменить URL, чтобы получить результаты. Документы FB не дают много информации. Я использовал: - граф. facebook.com/v2.8/{токен}&appsecret_proof={app_secret} - person Akshat; 03.11.2016