Привет всем, у меня есть некоторые проблемы с моим угловым клиентом.
всякий раз, когда я делаю почтовый запрос к своему весеннему бэкэнду, используя прокси, как это ...
{
"/api": {
"target": "http://localhost:3000",
"secure": false,
"changeOrigin": true,
"pathRewrite": {
"^/api": ""
}
}
}
Если я установил changeOrigin в False, то он работает на бэкэнде, как и ожидалось. Логин работает хорошо. Единственное, что странно - это ответ в угловом клиенте. Вместо того, чтобы получать исходный ответ от внутреннего сервера, я получаю содержимое моего файла index.html моего углового приложения. Ответ в httpClient.post.subscribe (...) - это просто содержимое файла Index.html.
Затем я попытался установить для changeOrigin значение true. Но тогда больше ничего не работает.
Я получаю ошибку cors, и мой Spring Backend отклоняет запрос. Почему так?
Я думал, что когда я хочу отключить cors на бэкэнде, тогда стоит использовать прокси. По крайней мере, когда дело доходит до настройки среды разработки.
На внутренней стороне моя пружинная защита выглядит так:
@Override
public void configure(HttpSecurity http) throws Exception {
http.csrf().disable().exceptionHandling()
.authenticationEntryPoint(
(request, response, authException) -> response.sendError(HttpServletResponse.SC_UNAUTHORIZED)
)
.and().authorizeRequests()
.antMatchers("/login", "/authorize").permitAll()
.anyRequest().authenticated()
.and().formLogin().permitAll();//.and().httpBasic();
}
В моем браузере клиент показывает мне следующее сообщение об ошибке: