Путаница с идентификатором автора сообщения в API графа Facebook

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

https://graph.facebook.com/v2.4/176151725813200_1452040848453513?fields=from&access_token=my_own_user_access_token

Возвращает одну запись, как показано ниже.

{
    from: {
        name: "Tracy Low",
        id: "1452298575094407"
    },
    id: "176151725813200_1452040848453513",
}

Кажется, это нормально, пока я не попытался выполнить дальнейший запрос по идентификатору автора "1452298575094407" в Facebook Graph API Explorer. Это выдает ошибку для меня.

{
    "error": {
        "message": "Unsupported get request. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
        "type": "GraphMethodException",
        "code": 100
    }
}

Если я создаю сценарий вызова, используя свой токен доступа пользователя,

https://graph.facebook.com/v2.4/1452298575094407?access_token=my_own_user_access_token

хорошая запись возвращается.

{
    name: "Tracy Low",
    id: "1452298575094407"
}

Если я запрашиваю тот же идентификатор сообщения в Graph API Explorer, '176151725813200_1452040848453513? Fields=from', я получаю

{
    "from": {
        "name": "Tracy Low",
        "id": "1449338978723700"
    },
    "id": "176151725813200_1452040848453513"
}

Посмотрите на from.id, теперь это другое значение! Это новое значение "1449338978723700" можно запросить в Graph API Explorer. "1449338978723700? Fields=id" ->

{
    "id": "1449338978723700"
}

Когда я добавляю значение идентификатора в " http://www.facebook.com/", первый идентификатор 1452298575094407 приводит меня к правильному профилю, а второй идентификатор 1449338978723700 жалуется, что профиль недоступен.

Версия API: 2.4/2.3

Это не блокирует мой сценарий, но странное поведение довольно смущает.

2 ответа

Решение

Разобрался почему. Два разных идентификатора - это идентификатор пользователя в области приложения. https://developers.facebook.com/docs/apps/upgrading

Хотя я до сих пор не могу понять, как будет работать Facebook, на какой профиль перенаправлять, когда я добавляю идентификатор области приложения в http://www.facebook.com/, когда appid отсутствует.

http://www.facebook.com/145229857509440 (Перенаправлено на действительный профиль) http://www.facebook.com/1449338978723700 (Жаленный профиль недоступен)

Если вы используете v2.3 и токен доступа к приложению, проблема может быть связана с ошибкой, о которой было сообщено в Facebook

Другие вопросы по тегам