Springboot配置excludePathPatterns不生效

Springboot添加拦截器配置excludePathPatterns不生效

code:

@Configuration
public class ServiceConfig implements WebMvcConfigurer {
@Autowired
LoginInterceptor loginInterceptor;

@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(loginInterceptor).addPathPatterns("/**").excludePathPatterns("/admin/checkLogin");
WebMvcConfigurer.super.addInterceptors(registry);
}
}

原因:

当访问***/admin/checkLogin路径时时,代码有bug触发了错误,这时路径被重定向为***/error,可以通过HttpServletRequest#getRequestURL检查,由于***/error不在excludePathPatterns中所以会被拦截器拦截。

解决方法:

1,解决excludePathPatterns访问路径的代码bug,就会生效。

2,添加***/error路径到excludePathPatterns中