Я разрабатываю приложение на Google AppEngine и использую Google+ SignIn
с методом потока на стороне сервера, как описано в документации здесь.
Я могу получить токен, как указано выше, и сохранить его в session
.
Однако я хочу проверить при входе в систему, если токен < strong>действителен или срок его действия истек. Как это сделать?
Примечание. Я использую клиентские библиотеки Google API для java.
Как проверить срок действия токена Google+ API на стороне сервера с помощью клиентской библиотеки Java
Ответы (2)
Вы можете вызвать метод API tokeninfo, чтобы получить информацию о токене, в том числе о том, сколько времени до истечения срока его действия (если ‹ 0, срок действия токена истек)
В дополнение к ответу Джейсона:
Вы также можете оценить, годен ли токен, установив другой файл cookie сеанса с отметкой времени, когда вы приобрели токен. Они истекают примерно каждый час (есть некоторая вариабельность).
Поскольку для конечной точки tokeninfo требуется запрос, вы также можете не обращаться к конечной точке tokeninfo, если у вас нет других причин, таких как необходимость проверки того, что токен соответствует приложению и пользователю, и просто делать обычные запросы, пока они не получат ошибку неверного запроса. Когда вы получите эту попытку обновить свой токен.