Обработка истечения срока действия jwt в SPA

Бекенд дает мне JWT, где даже открытый ключ зашифрован, единственное, что у меня есть, это закодированный jwt.

Я добавляю jwt ко всем своим http-вызовам, проблема в том, что в моем приложении есть только 5 http-вызовов, из которых 4 — get и только 1 — put. Моя проблема в том, что я могу проверить действительность токена только на первых 4 HTTP-вызовах и после того, как все данные кэшируются, поэтому я больше не могу контролировать действительность токена. Как я могу следить за датой истечения срока действия и автоматически выходить из системы, когда токен недействителен? Должен ли я сделать интервал, когда я каждую минуту проверяю действительность токена на определенной конечной точке? Нравиться:

Срок действия токена истекает через 3 часа, поэтому я каждые 20 минут проверяю действительность токена с помощью пинга на сервер.


person Robert    schedule 15.05.2019    source источник


Ответы (1)


Несколько решений для вашей проблемы:

  • Попросите бэкэнд-команду вернуть вам дату истечения срока действия токена вместе с токеном.
  • Токен — это просто строка кодировки base64, вы можете декодировать ее и извлечь хранящуюся в ней дату истечения срока действия.
person HRK44    schedule 15.05.2019
comment
Серверная часть отправляет мне срок действия токена в файле json. - person Robert; 15.05.2019
comment
Ну раз у вас есть истечение срока, в чем проблема? Просто запросите новый токен до истечения срока действия - person HRK44; 15.05.2019