http url 的 Http 失败响应:401 未经授权
Http failure response for http url: 401 Unauthorized
每当我使用以下方法时,我都可以从 angular
调用我的服务
@Override
protected void configure(HttpSecurity http) throws Exception{
http.csrf().disable().authorizeRequests().antMatchers("/").permitAll();
}
但是当我如下更改配置方法时,出现 401 错误。
@Override
protected void configure(HttpSecurity httpSecurity) throws Exception {
httpSecurity.csrf().disable()
// dont authenticate this particular request
.authorizeRequests().antMatchers("/authenticate", "/register","/basicauth").permitAll().
// all other requests need to be authenticated
anyRequest().authenticated().and().
// make sure we use stateless session; session won't be used to
// store user's state.
exceptionHandling().authenticationEntryPoint(jwtAuthenticationEntryPoint).and().sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS);
// Add a filter to validate the tokens with every request
httpSecurity.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);
}
如何克服这个问题。
我的错误如下
您需要在 antMatchers()
中指定整个端点。据我所知,您要达到的 url 是 .../api/v1/basicauth
=> 将 /basicauth 字符串更改为 /api/v1/basicauth.
每当我使用以下方法时,我都可以从 angular
调用我的服务 @Override
protected void configure(HttpSecurity http) throws Exception{
http.csrf().disable().authorizeRequests().antMatchers("/").permitAll();
}
但是当我如下更改配置方法时,出现 401 错误。
@Override
protected void configure(HttpSecurity httpSecurity) throws Exception {
httpSecurity.csrf().disable()
// dont authenticate this particular request
.authorizeRequests().antMatchers("/authenticate", "/register","/basicauth").permitAll().
// all other requests need to be authenticated
anyRequest().authenticated().and().
// make sure we use stateless session; session won't be used to
// store user's state.
exceptionHandling().authenticationEntryPoint(jwtAuthenticationEntryPoint).and().sessionManagement()
.sessionCreationPolicy(SessionCreationPolicy.STATELESS);
// Add a filter to validate the tokens with every request
httpSecurity.addFilterBefore(jwtRequestFilter, UsernamePasswordAuthenticationFilter.class);
}
如何克服这个问题。
我的错误如下
您需要在 antMatchers()
中指定整个端点。据我所知,您要达到的 url 是 .../api/v1/basicauth
=> 将 /basicauth 字符串更改为 /api/v1/basicauth.