Внедрих успешно влизане в Google.
Мога да удостоверя потребителя и в отговор получавам токен. Токенът обаче изтича след 1 час.
expires_in: "3600"
Опитах се да потърся в документите - https://developers.google.com/identity/sign-in/web/reference - но не може да намери параметър за удължаване на живота на токена.
Какво всъщност се опитвам да направя?
https://developers.google.com/identity/sign-in/web/backend-auth
след като потребителят влезе успешно, изпратете ID токена на потребителя към вашия сървър чрез HTTPS
Изпращам токен с всяка заявка към сървъра:
endpoint/get?access_token=" + access_token
И тогава на сървъра се обаждам на https://www.googleapis.com/oauth2/v3/tokeninfo
Така че имам токен, всяка заявка се удостоверява, но след 1 час работа методът tokeninfo
връща false и трябва да удостоверя отново потребителя.
В моя код заобикалях това, като съхранявах всички исторически access_tokens
и ако клиентът използва стар токен, проверявам историческите данни и ръчно издавам нов токен, използвайки refresh_token
(едно от моите разрешения е да предоставя офлайн достъп)
Така че да, ще ми е много интересно да знам:
- Как да удължа живота на
access_token
?
OR
- Като се има предвид ограничената продължителност на живота, как да се гарантира, че заявките са удостоверени в бекенда?