我的项目有2个API。第一个需要身份验证,第二个不需要。
我成功地为第一个API /auth/uploadFile
以下是 SecurityConfig 类的代码段,扩展 WebSecurityConfigurerAdapter 。
@Override
protected void configure(HttpSecurity http) throws Exception {
http.addFilterBefore(tokenAuthenticationFilter, BasicAuthenticationFilter.class).authorizeRequests()
.antMatchers("/auth/uploadFile/").permitAll().anyRequest()
.authenticated().and().csrf().disable();
}
我没有将我的第二个API /noauth/uploadFile
添加到 antMatchers(),但它仍然会输入自定义 tokenAuthenticationFilter 当我打电话给它时。
当我调用第二个API /noauth/uploadFile
时,如何避免输入我的自定义过滤器 tokenAuthenticationFilter ,但我的过滤器不应该应用于第二个API?
答案 0 :(得分:2)
您可以在SecurityConfig类中覆盖/添加以下方法。
public void configure(WebSecurity web) throws Exception {
web
.ignoring()
.antMatchers("/noauth/**");
}