在springboot 2.x中使用拦截器时,静态资源被拦截问题解决办法

该博客针对Spring Boot 2.x拦截器拦截静态资源问题给出解决办法。一是在application.yml中配置静态资源访问路径;二是修改页面静态资源链接,在路径前加/static前缀;三是注册拦截器时添加例外,拦截器要实现WebMvcConfigurer接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.首先在application.yml中配置静态资源访问路径

2.修改页面静态资源链接

3. 注册拦截器时添加例外


1.首先在application.yml中配置静态资源访问路径

spring:
  mvc:
    static-path-pattern: /static/**

2.修改页面静态资源链接

之前的链接

<link rel="stylesheet" type="text/css" href="/lib/layui-v2.4.5/layui/css/layui.css">

之后的链接

<link rel="stylesheet" type="text/css" href="/static/lib/layui-v2.4.5/layui/css/layui.css">

将页面中所有静态资源路径前加上/static前缀. 


3. 注册拦截器时添加例外

import com.test.IsLoginHandlerInterceptor;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class HandlerInterceptorConfig implements WebMvcConfigurer {
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        //注册登陆验证拦截器
        registry.addInterceptor(new IsLoginHandlerInterceptor()).addPathPatterns("/**")
                .excludePathPatterns("/","/user/login","/user/isLogin","/static/**");
    }

}

此处拦截器一定要实现org.springframework.web.servlet.config.annotation.WebMvcConfigurer接口,不能继承org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport这个类(网上好多教程都是继承这个类,不知道我为啥不行).


具体springboot拦截器怎么实现,怎么配置我就不写了,百度一大堆,这篇博客就是在大家遇到springboot 2.x拦截器拦截静态资源时才用得上,希望能帮助大家.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值