2

Я использую токен доступа в модуле joomla, чтобы получать сообщения о столбцах страницы/группы, которые будут отображаться в пользовательском веб-сайте page.user, сгенерированный токеном доступа моим приложением facebook с моего сайта перед использованием модуль на своем сайте joomla.Расширение действующего/просроченного токена доступа 60 дней без взаимодействия с пользователем

Что я хочу - «Я хочу продлить срок действия существующего истекшего 60-дневного токена без истекшего срока действия без взаимодействия с пользователем».

Что я получил из Интернета, что вызов этот URL маркер может быть продлен -

https://graph.facebook.com/oauth/access_token?client_id=APP_ID&client_secret=APP_SECRET&grant_type=fb_exchange_token&fb_exchange_token=EXISTING_ACCESS_TOKEN 

некоторые тест я сделал, чтобы продлить маркер и получил эти результаты :(

1.I created short lived access token in client side and extended it to 60 days by the above url 
2.I call above url again by passing that 60 days token as "fb_exchange_token" value to extend token again.I got different 60 days token but issue and expire date is same as before, not extended!! 
3.I again repeated test 1 and got a token which also have same issue and expire date! as I wanted to have the expire date extended as my test 2 is failed. 

Так как я достичь что я хочу? У меня есть план, что я продлю 60-дневный токен на 58-й день или после его истекли.

+2

_ «Так как я могу достичь того, чего хочу?» _ - совсем нет, конечно? Разрешение 'offline_access' было удалено по уважительной причине; поэтому вам нужно, по крайней мере, чтобы ваши пользователи повторно посещали вашу страницу в течение 60 дней, чтобы вы могли получить новый токен доступа. – CBroe

ответ

4

Весь срок истечения 60-дневного срока заключается в том, чтобы пользователи повторно посетили ваше приложение t конец истечения срока действия, и вы возвращаете их обратно через процесс входа в систему.

  • Получить недолгим лексема
  • Re-простираться

Расширение 60 день без взаимодействия с пользователем побеждает весь процесс. Если ваш пользователь не взаимодействует с вашим приложением через 60 дней, срок действия разрешения приложения истекает.

+0

Вы хотели, чтобы повторное посещение - аутентификация входа в систему fb с помощью моего приложения? Во всяком случае, о чем я могу назвать токен обменного токена с моим истекшим токеном, чтобы продлить его снова? Я предполагаю, что обновление каким-то образом с помощью биржевого токена url выше подтверждает отсутствие взаимодействия с пользователем. –

+0

@professional сеанс истекает через 60 дней, поэтому пользователь (когда он действительно вернется в ваше приложение) должен будет снова войти в систему. – phwd

0

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

offline_access Разрешение, которое вы могли бы использовать для расширения уже продлен на 60 дней разрешение один раз в день был удален от Facebook.

Теперь вы используете правильный URL, но условия таковы:

стороне клиента OAuth и расширение access_token Действительно время через Новый Endpoint

Использование новой конечной точки, вы будете иметь возможность продлить срок действия существующего, не истекшего, недолгого пользователя access_token. Обратите внимание, что конечная точка может использоваться только для расширения недолгого пользователя access_tokens. Если вы передадите access_token с долговременным сроком действия, конечная точка просто передаст тот же самый доступ к вам, не изменяя или не продлевая срок действия.

Чтобы получить долгоживущий пользователь access_token, просто передайте свой собственный client_id (ваш app_id), ваш app_secret и не прошедший срок действия, short-alive access_token в конечную точку ниже. Вам будет возвращен новый долгоживущий пользователь access_token; этот access_token будет существовать в дополнение к короткоживущему access_token, который был передан в конечную точку. Если вы хотите обновить по-прежнему действительный долгоживущий access_token, сначала вам нужно будет получить новый краткосрочный пользователь access_token, а затем вызвать ту же конечную точку. Возвращенный access_token будет иметь новое долговременное время истечения срока действия, однако сам access_token может быть или не быть таким же, как ранее предоставленный долгоживущий access_token.

https://graph.facebook.com/oauth/access_token?    
client_id=APP_ID& 
client_secret=APP_SECRET& 
grant_type=fb_exchange_token& 
fb_exchange_token=EXISTING_ACCESS_TOKEN 

Я собирался вставить объяснение о том, как «Создании Долгоживущих токенов пользователя из Серверных внеоборотных токенов», которые вы можете прочитать: http://developers.facebook.com/docs/facebook-login/access-tokens#long-via-code

Но, похоже, эта проблема имеет уже обсуждалось: Facebook PHP SDK 4.0 : Getting Long Term Access Token

Смежные вопросы