Срок действия маркера доступа приложения Facebook истек? - PullRequest
3 голосов
/ 22 февраля 2012

Это токен доступа, связанный с моим приложением Facebook - то, что возвращается из https://graph.facebook.com/oauth/access_token?grant_type=client_credentials&client_id=APP_ID&client_secret=APP_SECRET. Могу ли я получить его один раз из FB и сохранить где-нибудь для будущего использования, илимне нужно регулярно обновлять его?

Ответы [ 5 ]

19 голосов
/ 13 октября 2012

Access Token Tool - разработчики Facebook

Токены приложений не имеют срока действия и должны храниться в секрете, поскольку они связаны с секретом вашего приложения.

0 голосов
/ 06 марта 2014

Маркер доступа к моему приложению не изменился за месяц.Я не знаю, если это изменится.Ради интереса я просто изменил свой секрет приложения ...

Мой токен доступа к приложению сразу же изменился, и при попытке использовать старый я получаю ошибку HTTP 400 с телом сообщения ...

{"error": {"message": "Недопустимая подпись токена доступа OAuth.", "Type": "OAuthException", "code": 190}}

Мой совет - сохранить токен доступа ииспользуй это.Если только вы не получите сообщение выше, в этом случае получите новое и используйте его.Одна вещь, которую я еще не проверил, - это если вы получите тот же результат, если вместо этого истек срок действия токена доступа пользователя (который вы запрашиваете).

0 голосов
/ 31 октября 2012

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

  1. Получить токен пользователя
  2. Обмен токена пользователя на долгоживущий токен (Действителен для30 дней)
  3. Получить маркер страницы с этим токеном пользователя (срок действия данного токена не истекает)

Когда вы проверяете полученный токен, отметьте его Отладчик .Теперь вы увидите сообщение «Expires Never».

Документация включена Разработчики Facebook , Сценарий 5: Токены доступа к странице

0 голосов
/ 22 февраля 2012

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

Но почему это важно? процесс аутентификации приложения намного проще, чем у пользователей, поэтому просто сохраните токен где-нибудь (дБ, память), а затем попробуйте вызов API, в случае сбоя просто выполните один вызов, чтобы получить новый токен, сохраните его и продолжайте обычно.

0 голосов
/ 22 февраля 2012

Для каждого токена пользователя (который вы получаете по своей ссылке) существует дата истечения срока действия.Возьмите один из этих токенов в https://developers.facebook.com/tools/debug и отладьте его.Вы увидите, что, как правило, они истекают в течение примерно 60 минут.

Чтобы расширить этот пользовательский токен, вызовите команду exchange (https://developers.facebook.com/docs/offline-access-deprecation/), чтобы он стал 60-дневным токеном. Этот пользовательский токен должен быть неподвижнымдействителен (не истек) для этого.

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