SpringMVC 拦截器(interceptors)对样式(css),JavaScript(js),图片(images)链接的拦截
2024-08-26 01:36:33
因为在web.xml配置了
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
导致对所有连接都会经DispatcherServlet,所以静态资源如css,js,images都会被过滤到,从而导致页面没法渲染成功。
不过,我们可以在主配置文件中,添加<mvc:resources location="">,从而能够使得静态资源不会经过DispatcherServlet,就可以成功渲染页面了。
<!-- 处理静态资源的请求 -->
<mvc:resources location="/WEB-INF/views/css/" mapping="/css/**" />
<mvc:resources location="/WEB-INF/views/js/" mapping="/js/**" />
<mvc:resources location="/images/" mapping="/images/**" />
然而,SpringMVC还有拦截器的机制(如果你没用拦截器,那么就不会有问题),反而就把我们静态资源的请求链接也给拦截了,
通过我在拦截器里输出看到了,确实会把静态资源的请求链接也拦截到了,所以我页面就会产生如下错误:
Resource interpreted as Stylesheet but transferred with MIME type text/html:
我还是没找到其他原因,所以就在拦截器上把静态资源的链接给过滤了,然后就没产生上面的问题了。
虽然在其他页面倒是没有产生上面的问题,不过把静态资源的链接过滤了,应该也不会产生什么影响。
<mvc:interceptors>
<mvc:interceptor>
<mvc:mapping path="/**"/> <!-- 因为我对所有链接都拦截,所以静态资源的链接也被拦截了 -->
<mvc:exclude-mapping path="/js/**"/>
<mvc:exclude-mapping path="/css/**"/>
<mvc:exclude-mapping path="/images/**"/>
<bean class="com.databasegroup.interceptor.AuthInterceptor"></bean>
</mvc:interceptor>
</mvc:interceptors>
最新文章
- SecutrCRTt 连接VirtualBox 中的Ubuntu -端口转发
- Composer Player 属性设置
- 表单 - Validatebox - 表单参数校验
- Web性能测试基本指标
- BizTalk动手实验(十五)AS2消息安全传输
- 【CSS3】---元素隐藏(是否占据空间、是否可点击)
- C#委托与事件之观察者Observer设计模式
- php输出json中文显示编码-解决办法
- c#下载文件案例
- c标签和foreach循环不能加载
- ROS探索总结(十八)——重读tf
- 再谈ERP选型
- sql job定时备份数据库
- SQL Server 定价及授权方式
- [No000013A]Windows WMIC命令使用详解(附实例)
- APP-6-百度地图导航
- Docker 持续集成初次体验
- 关于xmlhttp会使用ie的缓存的问题及解决
- codeforces 1007B Pave the Parallelepiped
- hdu 5918(强行水过去..正解KMP)
热门文章
- linux vim 个性化设置(.vimrc)
- 【翻译】A (very) short introduction to R R的简短介绍
- N!水题
- ajax提交请求为啥url要用这个函数encodeURI
- VS2010发布网站的基本步骤
- UIWebView加载不了页面, 但在电脑的浏览器上可以打开
- 重复造轮子感悟 – XLinq性能提升心得
- C#中从元数据
- 几种破解MySQL root密码的几种方法:
- 武汉科技大学ACM :1001: 华科版C语言程序设计教程(第二版)课后习题3.12