拦截器是为了保障网站的资源安全问题,我们通常为网站设置拦截器但是我们设置拦截器一般都是进行全局拦截,全部资源都被拦截然后让拦截器去判断是否通过但是如果没有对静态资源进行管理,静态资源就没法正常加载😢
配置文件,一般情况下可以解决相应的问题,但不能完全解决
一般的拦截器配置 :
<context:component-scan base-package="com.fall.controller,com.fall.interceptor" />
<!-- 配置拦截器 -->
<mvc:interceptors>
<!-- 登录拦截器 -->
<mvc:interceptor>
<!-- 拦截规则 -->
<mvc:mapping path="/**"/>
<!-- 处理拦截的类 -->
<bean class="com.fall.interceptor.LoginInterceptor"></bean>
<!-- 静态外部元素 -->
<mvc:resources location="/WEB-INF/js/" mapping="/js/**" />
<mvc:resources location="/WEB-INF/css/" mapping="/css/**" />
<mvc:resources location="/WEB-INF/img/" mapping="/img/**" />
配置文件,一般情况下可以解决相应的问题,但不能完全解决,因此还须在拦截器内添加以下代码:
if (uri.endsWith("js")||uri.endsWith("css")||uri.endsWith("png")) {
return true;//对 js css png 开放
//注意:如果静态外部的js css png 不设置开放的话会造成死循环报错
}
小编是通过项目中遇到问题进行分享,希望遇到相同问题的伙伴得到帮助