Всем привет!
Некоторое кол-во времени уже мучаюсь с механизмом обработки выхода из учетки на сайте, был бы рад любому фидбеку.
Есть функция logOut, которая вызывается при клике на "Выйти". В ней нужно:
- отправить запрос на /logout, чтобы сессия удалилась
- почистить клиентские данные (локалСтор, стейт и тд)
- и соответственно сделать location.assign на adfs сервис, который занимается авторизацией.
Хотелось бы, чтобы выход из учетки происходил моментально, а не дожидаясь ответа от запроса на удаление сессии (запрос - /logout). То есть запрос на /logout послать нужно, но дожидаться его ответа не обязательно (если запрос будет успешным, то все ок - сессия удалилась, если нет - ну так уж быть, "потерянная" сессия останется на бэке).
Проблема в том, что, как я себе предполагаю, интерпретатор выполняя данную функцию, на 7й строчку должен моментально отправить запрос и собственно продолжить выполнение этой функции. Однако я такого не наблюдаю: у меня стоит брекпоинт на Axios.interceptors.request (последняя функция которая вызывается перед отправкой запроса) и я вижу, что код доходит до данного брекпоинта только после выполнения всей функции logOut..
Я не понимаю, почему так происходит.. (Если вышесказанное верно, есть предположения, что это axios внутри себя делает так, что все запросы отправляются исключительно после выполнения синхронного кода функции, в которой она была вызвана, или же, возможно, такие ограничения накладывают интерцепторы)