Вопрос проверяет понимание жизненного цикла авторизации и корректного поведения frontend при истечении access token.
При истечении access token frontend должен попытаться обновить его с помощью refresh token. Пользователь не должен замечать этот процесс. Если обновление прошло успешно, запрос повторяется. Если нет — пользователь разлогинивается. Такой сценарий обеспечивает плавный пользовательский опыт.
Access token имеет короткий срок жизни, поэтому frontend должен быть готов к его истечению в любой момент.
Когда access token истёк:
Backend возвращает ошибку
Frontend запускает процесс обновления токена
Получает новый access token
Повторяет исходный запрос
Пользователь не должен видеть ошибку
Процесс должен быть автоматическим
Повтор запроса должен быть прозрачным
В этом случае:
обновление access token невозможно
сессия считается завершённой
frontend очищает состояние авторизации
пользователь перенаправляется на логин
Frontend обычно:
хранит флаг обновления токена
блокирует параллельные refresh-запросы
избегает бесконечных циклов обновления
Вывод:
Корректная обработка истечения access token — ключ к хорошему UX и стабильной авторизации в SPA.