Leo187 2016-12-02 08:39 采纳率: 100%
浏览 4538
已采纳

spring mvc 拦截器 拦截多种类型的多个请求

一个后台权限的项目,现在的问题是拥有不同权限的管理员可以管理不同模块,当他访问他没有权限的模块时时应该被拦截,显示一个指定页面,但是这个项目的后台请求有很多,一个模块下面又有很多细化的请求,所有一个一个的配置拦截器不现实,求大神帮忙 给个思路怎么去把这上百个拦截器配置好 O(∩_∩)O谢谢

  • 写回答

5条回答

  • 蜗牛学走路 2016-12-02 09:11
    关注

    你可以通过可访问资源路径来实现,给你举个简单的例子,用户和角色关联这点不用多说了,你说不同的用户角色可以访问不通的模块,这点在前台页面上可以通过配置角色菜单来实现,比如财务部门用户登录后只能看到某某菜单,你只要把菜单跟角色关联起来就可以了,但是这样仅仅只是页面上的控制,假如这个用户知道了其他模块的访问地址,她依旧可以登录后通过手动输入url来访问,所以就出现了你刚才说的问题,你的思路是对的,一个一个写拦截器肯定不现实,你可以通过菜单配置角色的的可访问资源路径,比如admin角色可以访问用户模块那它的可访问资源就是/user/*,这样你在写一个总的拦截器,获取到用户请求的url,然后根据当前登录用户得到他的可访问资源中是否包含这个url,这样就可以了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?