Расширение токена доступа к странице Facebook

Мне нужно расширить токен доступа к facebook, я вызываю это:

https://graph.facebook.com/oauth/access_token? 
client_id={MY PAGE ID}&
client_secret={THE SECRET KEY OF MY APP}&
grant_type=fb_exchange_token&
fb_exchange_token={AN ACCESS TOKEN FOR MY PAGE}

и я получаю эту ошибку:

   "error": {
      "message": "Error validating application. Cannot get application info due to a system error.",
      "type": "OAuthException",
      "code": 101
   }

Я видел много проблем с этим access_token, но никто не ответил относительно страниц, idk, почему facebook использует api, почему... но это способ...

Спасибо,

Ответ 1

Чтобы получить долгоживущий токен доступа, вам необходимо выполнить следующие шаги:

  • Создать приложение
  • Создайте страницу (ваша учетная запись должна быть "администратором" страницы).
  • Свяжите приложение с страницей (так же, как вы это делаете, когда хотите добавить вкладку страницы на страницу)

    http://facebook.com/add.php?api_key=*YOUR_APP_ID*&pages=1&page=*YOUR_PAGE_ID*
    
  • Получите недолгосрочный токен доступа с разрешением "manage_pages", связанным с вашим приложением.

    https://graph.facebook.com/oauth/authorize?client_id=__APP_ID__&scope=manage_pages&redirect_uri=http://www.facebook.com/connect/login_success.html
    then
    https://graph.facebook.com/oauth/access_token?client_id=__APP_ID__&redirect_uri=http://www.facebook.com/connect/login_success.html&client_secret=__APP_SECRET__&code=__CODE_FROM_PREVIOUS_REQUEST__
    
  • Используя Graph API Explorer с запросом /me/accounts, вы можете увидеть токены доступа для каждой страницы, на которой вы являетесь администратором. Проблема в том, что эти токены доступа недолговечны.

  • Преобразуйте токен с недолгосрочным доступом в долгоживущий (расширяющий токен доступа):

    https://graph.facebook.com/oauth/access_token?client_id=_APP_ID_&client_secret=_APP_SECRET_&grant_type=fb_exchange_token&fb_exchange_token=_ACCESS_TOKEN_ON_STEP_4_
    
  • Теперь вы можете протестировать свой новый токен доступа с помощью Отклика маркера доступа.

Ответ 2

Сценарий 5: токены доступа к странице

Когда пользователь предоставляет приложение разрешение manage_pages, приложение может для получения токенов доступа к странице для страниц, которыми пользователь управляет запрос конечной точки API-интерфейса [User ID]/учетных записей. С миграцией включен, при использовании недолгого токена доступа пользователя для запроса этого конечная точка, полученные токены доступа к странице также недолговечны.

Обменивать токен доступа с недолгосрочным доступом для долговременного доступа токена, используя конечную точку и шаги, описанные ранее. Используя долгоживущий токен доступа пользователя, запрашивающий конечную точку [Идентификатор пользователя]/учетных записей теперь будут предоставлять токены доступа к странице, которые не истекают для страниц, которые пользователь управляет. Это также будет применяться при запросе с не истекающим сроком действия токен доступа пользователя, полученный через устаревший offline_access разрешение.

https://developers.facebook.com/roadmap/offline-access-removal/

Ответ 3

Ниже приведена информация о получении "расширенного токена доступа к странице", который действителен навсегда (не только 60 дней): http://www.devils-heaven.com/facebook-access-tokens/