配置的拦截器:
@SpringBootConfiguration
public class MyConfig extends WebMvcConfigurationSupport{
@Override
protected void addInterceptors(InterceptorRegistry registry) {
MyInterceptor myInterceptor= new MyInterceptor();
registry.addInterceptor(myInterceptor).addPathPatterns("/**").excludePathPatterns("/myApi/custom/**");
}
}
application.properties中配置了:
server.servlet.context-path=/myApi/
controller中请求地址有aa和bb和custom/cc
请求地址: http://localhost:8080/myApi/aa 或者 http://localhost:8080/myApi/bb,都没有问题,拦截器生效,都会拦截,但请求http://localhost:8080/myApi/custom/cc也会拦截
就是配置的excludePathPatterns死活不生效,一顿乱搞,感觉配置的拦截器没问题啊,
最后把excludePathPatterns("/custom/**")这样,就可以了
但还是不明白为什么??
跟了一下代码,没有看懂,有哪位知道的还请指点一下,谢谢
博客讲述了Spring Boot拦截器配置中,excludePathPatterns不生效的问题。配置拦截器排除/custom/**路径无效,请求该路径仍被拦截,后将配置改为excludePathPatterns(\/custom/**\)才正常,但作者不明白原因,希望有人指点。
4710

被折叠的 条评论
为什么被折叠?



