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