我有一个安心的Angular / Jee应用程序。 我正在使用Spring Boot和安全性。
来自localhost:8080
的所有请求都运行良好
从角(localhost:4200/
)上,登录/注销,当我尝试另一个类似localhost:8080/getUserBooks
的请求时,注册者请求运行良好
它失败并显示401 error
注意: -我尝试停用Chrome的CORS,但无法正常工作。 -我读了很多相同的问题,但没有解决方案适合我的情况。 -我已经将注释@CrossOrigin(“ *”)添加到我的rest控制器中
这是我的WebSecurity配置
@Override
protected void configure(HttpSecurity http) throws Exception {
// http.cors().and().csrf().disable().authorizeRequests()
http.csrf().disable().httpBasic().and().authorizeRequests().antMatchers(HttpMethod.POST, SIGN_UP_URL)
.permitAll().anyRequest().authenticated().and()
.addFilter(new JWTAuthenticationFilter(authenticationManager()))
.addFilter(new JWTAuthorizationFilter(authenticationManager())).sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS);
}
@Override
public void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userDetailsService).passwordEncoder(bCryptPasswordEncoder);
}
@Bean
CorsConfigurationSource corsConfigurationSource() {
final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", new CorsConfiguration().applyPermitDefaultValues());
return source;
}
答案 0 :(得分:0)
您必须必须允许端口8080的交叉原点