Я работаю над приложением Angular.
У нас есть веб-сервис, который принимает учетные данные для входа и возвращает apikey, если учетные данные действительны.
На стороне клиента мы создаем AJAXпозвоните, и если учетные данные действительны, мы храним ключ API в хранилище сеансов и переводим пользователя на домашний экран.
Также у нас есть защита маршрута для защиты всех экранов с аутентификацией.
Теперькогда мы пытаемся открыть ссылку в новой вкладке, пользователь снова попадает на экран входа в систему, поскольку ключ API находится в хранилище сеанса.
Мы можем использовать локальное хранилище для хранения ключа API, но проблема здесь заключается в том, чтоСрок действия ключа API никогда не истекает, но он доступен для всех вкладок.
Может кто-нибудь предложить более подходящее решение?
Решение, которое, я думаю, будет работать, но не пробовало, сделать обычный HTTP-запросэто когда пользователь нажимает кнопку входа, затем создает сеанс на стороне сервера и перенаправляет пользователя на домашнюю страницу из сервлета.На стороне клиента добавьте вызов веб-службы в ngOnInit, чтобы узнать, зарегистрирован ли пользователь или нет.