尝试某些请求时出现Spring安全性和角度401错误

问题描述 投票:0回答:1

我有一个宁静的申请Angular / Jee。我正在使用spring Boot和安全性。

所有请求都在localhost:8080运作良好

从角度(localhost:4200/),登录/注销和注册商请求工作正常但是当我尝试另一个请求,如localhost:8080/getUserBooks它失败与401 error

注意: - 我试图从Chrome中解除CORS,但是没有用。 - 我读了很多相同的问题,但没有解决方案适用于我的情况。 - 我已将注释@CrossOrigin(“*”)添加到我的其余控制器

这是我的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;
}
java angular spring security
1个回答
0
投票

您必须允许交叉源为端口号:8080