• Spring MVC 拦截器问题,如何配置不需要拦截的页面


    比如我写个spring mvc的拦截器,我除了登录login和main页面不拦截,其他全部拦截。
    <mvc:interceptors>这种方法我会。多个拦截器定义我也会。我就想知道如果我只想定义这2个页面不拦截我要怎么配置。比如我有1000个页面需要拦截,那我总不至于全都在配置文件里面配置拦截的吧?我只需要配置哪些不拦截就行,请问怎么写呢?谢啦!
     
    ----------------------
    我估计是想想用拦截器做权限验证,login和main不需要验证吧。
     
    我的方法是,定义一个@Auth,可以加些自定义的属性,比如访问这个方法所需要的权限。@Auth加在需要验证的controller方法上。
    然后定义个AuthorizationInterceptor,实现 HandlerInterceptor接口中的preHandle方法,该方法中有个handler参数,对于一般的请求,该参数是HandlerMethod类型,可以从中获取到controller方法上的annotation,如果有@Auth则验证权限,否则放行。
     
    你想的是拦截页面,我想的是拦截方法。因为页面也是由方法跳转过去的。
     
     
    --------------------------
    追问本身拦截页面就要写一个拦截器了。再写一个拦截器这样不是麻烦吗?我就想问问不能在验证上下功夫吗?比如路径匹配。pathMapping=""引号里面的内容匹配。亦或者是mappingUrl 在props里面value=“”这里用通配符匹配。可是我没做出来
     
    回答我的意思是,拦截器只拦截对方法的访问,对页面的就不管了
    -------------------------
    追问是对方法的访问,可是一个方法对应的就是一个页面。其实我想问的也就是对方法的访问。比如我拦截的是/login,不就是login方法么,他对应的就是login页面。为什么不能直接路径匹配,只要改通配符就可以了。只不过通配符我不太会用。给的答案不是我想要的,所以我没设满意。但是管理员设了推荐答案。还是谢谢你的回答
  • 相关阅读:
    SpringBoot HATEOAS用法简介
    犀函
    dubbo 相关面试题 有用(转)
    想使用消息队列,先考虑下这些问题!
    appium在Mac上环境搭建
    3. SOFAJRaft源码分析— 是如何进行选举的?
    Redis相关知识
    替代微信ipad协议(转)
    c#面试题(1)(转)
    例题6-5 Boxes in a line uVa12657
  • 原文地址:https://www.cnblogs.com/huapox/p/3516066.html
Copyright © 2020-2023  润新知