Как мне получить access_token для входа на страницу для страницы facebook, срок действия которого НЕ истекает?

Вот в чем проблема: мне нужно запрограммировать приложение, публикующее фотографии на странице в Facebook, которая не управляется пользователем, запускающим приложение.

Я знаю, что для входа на страницу мне нужно получить access_token администратора, как описано здесь: http://developers.facebook.com/docs/authentication/ (раздел «Вход на страницу»)

Шаг 1: Я вхожу в систему как администратор страницы.

Шаг 2: Я заполняю App-ID, redirect_uri и область, как описано.

Шаг 3: Как уже было сказано, я копирую токен сюда: https://graph.facebook.com/me/accounts?access_token=TOKEN_FROM_ABOVE

После этого я получаю список страниц, администратором которых я являюсь. Я могу использовать соответствующий токен, и каждый пользователь моего приложения может размещать сообщения на этой странице. Но только до истечения срока действия токена.

Проблема на шаге 2. Когда я получаю access_token, в конце строки уже написано «&expires_in=5848». Изменение на «scope=manage_pages,offline_access» не помогает.

Таким образом, очевидно, что мое приложение совершенно бесполезно. Что я делаю неправильно? Что мне здесь не хватает? Почему здесь не работает offline_access?

Любая помощь будет очень признательна!

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


person swafnir    schedule 10.02.2012    source источник


Ответы (1)


Я только что создал совершенно новое приложение. Убедитесь, что устаревший автономный доступ включен. Зашел в Explorer, нашел мое новое приложение в раскрывающемся списке, предоставил себе manage_pages, перешел к me/accounts, получил один из токенов доступа page, а затем проверил его.

Вау! 1 час экспирации. Как и у вас.

Я попытался обменять этот токен 1-часовой страницы и получил сообщение об ошибке от fb. Грррр....

Я вернулся к токену доступа user и заменил его на 60-дневный. В линтере проверил, что это 60 день. Вернулся в раздел me/accounts, взял один из токенов доступа page и проверил его. Сюрприз! Получил 60-дневный токен оттуда.

Итак, мораль этой истории в том, что вы не можете обменивать токены страниц, только токены пользователей. Но с 60-дневным токеном пользователя вы можете получить 60-дневный токен страницы. :)

person DMCS    schedule 10.02.2012