Spring中WebMvcConfigurer的拦截器“干扰“资源映射的问题

最近项目使用springboot,重写WebMvcConfigurer的addInterceptors()做拦截,

但由于项目中集成了静态资源,导致一直被拦截器处理,重写addResourceHandlers()方法也没用

后突然想到一种可能,是否拦截器配置的addPathPatterns("/**")导致静态资源被拦截

于是在addInterceptors()方法中排除静态资源excludePathPatterns("/static/**")

终于ok

总结

如果拦截器addInterceptors()拦截所有addPathPatterns("/**"),

则需要拦截器排除excludePathPatterns("/static/**")

才能使重写的addResourceHandlers()方法中addResourceHandler("/static/**")生效

 

20200721追加:

当初为了实现特殊字符过滤 使用Filter包装HttpRequest,导致静态资源一直响应码206,响应头也不对,注释掉filter后正常

 

你可能感兴趣的:(学习笔记)