springboot拦截器addResourceHandlers
时间: 2025-03-01 10:45:50 浏览: 34
### 解决方案
为了确保静态资源能够在Spring Boot应用程序中正常加载而不被拦截器所影响,可以在`MyInterceptorConfig`配置类中重写`addResourceHandlers`方法[^2]。
具体来说,该方法用于指定哪些路径下的请求应该映射到特定位置的静态文件上。这通常涉及到设置资源处理程序来覆盖默认行为,从而允许直接访问位于`classpath:/static/`目录中的静态资源:
```java
@Override
protected void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/**")
.addResourceLocations("classpath:/static/");
super.addResourceHandlers(registry);
}
```
上述代码片段定义了一个新的资源处理器规则,它会匹配所有的URL模式(`/**`)并将这些请求指向应用内部的`/static`文件夹内的资源。这样做可以防止自定义拦截器意外地阻止对图片、CSS样式表或其他前端依赖项的访问[^3]。
如果实现了`WebMvcConfigurer`接口而不是继承`WebMvcConfigurationSupport`类,则不需要调用父类的方法(即无需执行`super.addResourceHandlers(registry)`),因为前者不会替换掉框架自带的自动配置机制[^4]。
对于希望进一步增强安全性的场景,比如仅当用户成功登录后才授予某些页面或API端点的访问权限时,还可以创建专门的拦截逻辑——例如构建名为`LoginInterceptor`的组件并将其注册至全局过滤链路之中[^5]。
阅读全文
相关推荐



















