有一个登陆拦截器,肯定要对用户的操作进行登陆状态判断,现在的问题是:
/login /register / 这三个请求路径不拦截。
其他的 /admin/add /admin/remove /student/homework/add /teacher/class/remove 这种2层及以上层级的请求路径要进行拦截。
那么请问怎么配置拦截器的 path mapping啊?
写成这样拦截不到 /*/**
还有,在拦截器里面使用response.sendRedirect("/login") 无法跳转到项目的/login请求,地址栏是localhost:8080/login,而实际上应该是跳转到localhost:8080/website/login 这里
以上两个问题,求教大神,叩谢。
------解决思路----------------------
response.sendRedirect就如同在浏览器上直接输地址,而你又是使用的/login。有/和没有/是不同的,下面分别给你说明:
带/:表示站点开始,这里你的站点目录就是localhost:8080
不带/:表示从当前文件所在目录下去找。
这下你知道应该怎么写了把
第一个拦截器问题:由于很长时间没有配置过,基本记不起来是怎么弄的,不过你可以看看spring相关的解析源码,然后看他是如何处理路径请求的。以前我也是这么做的。具体你的解析类好像是一个stringmatch结尾的类。当然你也可以试试
/*/*,/**/**,/**/*