问题:在使用了MVC拦截器时,访问除登录页面以外的URL时,判断是否登录,未登录的访问全部跳转至登录界面,但是在设置好时,是会判断并跳转,但是在起初,未登录访问,会先进入访问的资源页面后,立即闪退去登录页面。
但是明显这种状况是不满足权限拦截需求的,是错误操作。
原因就在于一开始在web.xml中配置了默认servlet对 *.html 资源的放行,(因为不配无法访问到html资源。)
于是问题就产生了,下面是开始的配置:
<!--避免springmvc拦截以html结尾的请求--> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping>
但是,这样虽然表面上的功能都实现了,却会出现上面说的问题。
解决方式很简单,在web.xml删除上面的配置,将该默认的servlet配置移到mvc的配置文件中配置,如下:
<!-- 配置静态资源 默认servlet配置 允许使用"/"做整体映射 等--><mvc:default-servlet-handler />
重新运行,问题解决,不会再进入被拦截页面后又闪跳会登录界面了。