Проблема CORS в приложении Angular при добавлении шага входа в системуJAVA

Программисты JAVA общаются здесь
Anonymous
Проблема CORS в приложении Angular при добавлении шага входа в систему

Сообщение Anonymous »

У меня есть приложение весенней загрузки, настроенное с использованием входа auth0, и этот вход работает при прямом подключении через браузер. Однако при добавлении внешнего приложения Angular у меня возникла проблема с CORS. Я вижу, что происходит перенаправление на страницу входа:
Изображение

При нажатии на ссылку перенаправления, если я не вошел в систему, я вижу, что открывается страница входа в систему, однако, если я уже вошел в систему и нажимаю эту ссылку, у меня есть следующую страницу:
Изображение

Я настроил CORS в auth0, чтобы разрешить мое внешнее приложение. Я даже пытался загрузить серверную часть на внешний сервер и связаться с внешней частью с другого компьютера, но проблема все еще остается.
Я вижу, что ответ от сервера с перенаправлением имеет заголовок Acess-Control-Allow-Origin правильно установлен с нужным нам значением, но я не уверен, что этот заголовок передается вызову перенаправления.
Я где-то читал, что это может быть потому, что и сервер, и интерфейс используют localhost. Есть ли способ изменить это в любом из приложений?
Что-то мне не хватает? Нужно ли мне создавать перехватчик в угловом интерфейсе, который вручную добавляет этот заголовок в перенаправление?
Заранее спасибо за помощь.
РЕДАКТИРОВАТЬ:
В моем приложении с весенней загрузкой это мой фильтр Cors:
@Component
@Order(Ordered.HIGHEST_PRECEDENCE)
public class MyCORSFilter implements Filter {

@Override
public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
throws IOException, ServletException {

HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, DELETE, OPTIONS");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers",
"Content-Type, Accept, X-Requested-With, remember-me");
chain.doFilter(req, res);
}

@Override
public void init(FilterConfig filterConfig) {
}

@Override
public void destroy() {
}

}

Это мой файл application.yaml с конфигурацией приложения auth0:
spring:
security:
oauth2:
client:
registration:
auth0:
client-id: {ClientId}
client-secret: {ClientSecret}
scope: openid+profile+email
provider:
auth0:
issuer-uri: {IssuerURI}


Подробнее здесь: https://stackoverflow.com/questions/787 ... login-step

Вернуться в «JAVA»