Получить собственный канал из Facebook API - PullRequest
0 голосов
/ 15 мая 2018

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

Что я хочу сделать, так это получить свои собственные сообщения в фиде на Facebook (мои сообщения) и отобразить их в разделе «Новости» на моем веб-сайте. Я хочу использовать API-интерфейс Graph в качестве социальных плагинов для страницы Facebook со странными ограничениями ширины, которые у меня не работают.

Чтобы получить доступ к своим СОБСТВЕННЫМ сообщениям в моем СОБСТВЕННОМ канале, чтобы разместить их на своем СОБСТВЕННОМ веб-сайте, мне, кажется, трудно получить рабочий токен доступа. Нужно ли делать «вход в Facebook» для обработки разрешений?

Я создал учетную запись разработчика Facebook, создал приложение и, похоже, успешно извлекаю токен со следующим кодом:

let myToken = ''

fetch(`https://graph.facebook.com/oauth/access_token?client_id=${id}&client_secret=${secret}&grant_type=client_credentials`)
  .then(response => response.json())
  .then(token => (myToken = token.access_token))
  .catch(e => console.log(e))

Когда я иду использовать этот токен:

fetch(`https://graph.facebook.com/v3.0/me/feed?limit=10&fields=id%2Cfull_picture%2Ccreated_time%2Cfrom%7Bid%2Cname%2Cpicture%7D%2Cmessage%2Clink%2Ctype%2Cshares%2Cobject_id%2Cstory&access_token=${myToken}`)
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(e => console.log(e))

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

Я не хочу никакого взаимодействия с пользователем (комментирование, лайки и т. Д.), Все, что я просто хочу, - это прочитать сообщение и загрузить изображение, если оно есть. Я отошлю посетителя к Ссылка «Просмотр в Facebook» для взаимодействия.

Используя Graph API Explorer Tool, я могу успешно получать данные, но мне нужно выбрать «Получить токен доступа пользователя» и выбрать группу разрешений.

Я могу взять токен из Graph API Explorer и заставить мой желаемый код работать, но он длится всего от 1 часа (недолговечный) до 2 месяцев (долгоживущий). И не хотел бы постоянно обновлять жестко запрограммированный токен на моей странице.

Я что-то здесь упускаю?

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

1 Ответ

0 голосов
/ 15 мая 2018

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

Для этого запроса вы должны использовать Пользовательский токен вместо App Token (с символом | между ними).

Я попробовал ваш код с моими собственными токенами, и при использовании Пользовательского токена он возвращает мне объект данных (в моем случае пустой).

При использовании App Token API Graph отвечает «Активный токен доступа должен использоваться для запроса информации о текущем пользователе». , то же самоепо мере поступления.

Подробнее о токенах доступа на этой странице: https://developers.facebook.com/docs/facebook-login/access-tokens

Дайте мне знать, как вы попали.

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