Срок действия токена доступа Google

150

Когда я получаю access_tokenот Google API, он имеет expires_inзначение. Согласно документации, это значение указывает «Оставшееся время жизни токена доступа».

Каковы единицы этого значения?

Фрэнк Лароза
источник
8
Потому что в 99,9% случаев, когда у вас есть число, представляющее время, это либо секунды, либо его подразделение, и миллисекунды не имеют смысла для этого случая?
Venge
7
@FrankLaRosa: есть ли способ установить неограниченный срок действия маркера доступа.
Hardik
Я повторяю одну вещь: пожалуйста, примите ответ ниже, если это удовлетворительно, спасибо! Однако единицами этого значения являются секунды.
Давиде Кастроново
@ Хардик, как я могу сделать срок действия неограниченным? Вы нашли какое-нибудь решение?
Джей Патель
Интересно, какова связь между истечением срока действия и разрешением обновления (для получения нового токена)? Если вы подождете, пока не истечет срок действия, чтобы получить новый токен, некоторые вызовы API будут терпеть неудачу между ними. Если вы «обновитесь» слишком рано, вы просто вернете старый токен. как узнать, когда можно получить новый токен относительно поставляемого expires_in?
Джон Литтл

Ответы:

96

Спекуляция говорит секунды:

http://tools.ietf.org/html/draft-ietf-oauth-v2-22#section-4.2.2

expires_in
    OPTIONAL.  The lifetime in seconds of the access token.  For
    example, the value "3600" denotes that the access token will
    expire in one hour from the time the response was generated.

Я согласен с ОП, что для Google небрежно не задокументировать это.

Лоуренс Кестулут
источник
Вы должны нажать на вкладку "OAUTH 2.0 ENDPOINTS"
Davide Castronovo
89

Посмотрите на: https://developers.google.com/accounts/docs/OAuth2UserAgent#handlingtheresponse

Это говорит:

Другие параметры, включенные в ответ, включают expires_inи token_type. Эти параметры описывают время жизни токена в секундах ...

stewe
источник
на какой токен ссылается expires_in: токен доступа или токен обновления?
ス レ ッ ク ス
1
@AlexanderSupertramp, который должен ссылаться на токен доступа как токен обновления, используется для получения новых токенов доступа, когда пользователь находится в автономном режиме.
Джереми Тизен
15

Поскольку нет принятого ответа, я постараюсь ответить на этот:

[s] - seconds
msysmilu
источник
6

Из документации Google OAuth2.0 для клиента ,

  • expires_in - количество секунд, оставшихся до того, как токен станет недействительным.
Давиде Кастроново
источник
Его больше нет на этой странице, максимальное значение можно ввести как 3900, но фактическое значение - 3600. Интересно, есть ли способ получить токен без срока действия?
sojim2
см. эту ссылку на этой странице: developers.google.com/identity/protocols/… но я не знаю, как получить токен без истечения срока действия, как я думаю, использование таких токенов - плохой дизайн для безопасности.
Давиде Кастроново