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中