问答详情
源自:4-3 通过注解配置授权

使用了@RequiresRoles如果没有该角色抛出异常前端怎么处理

某个方法使用了@RequiresRoles注解,就代表有该角色才能访问,但是如果没有该角色去访问就抛出了异常,前端页面怎么捕获这个异常告知当前用户不具有该链接访问权呢


提问者:小太阳和小月亮 2018-09-28 10:14

个回答

  • 明天再学
    2018-09-28 15:15:40
    已采纳

    如果用了SpringMVC的话,设置的shiro的跳转貌似是没用的,这时候要在springMVC 里面配置,捕获异常并跳转:

    <!-- 捕获无权限的异常进行跳转 -->
    <bean class="org.springframework.web.servlet.handler.SimpleMappingExceptionResolver">
    		<property name="exceptionMappings">				
    		<props>						
            		<prop key="org.apache.shiro.authz.UnauthorizedException">
            			/unauthorized	
            		</prop>	
    		
    		</props>		
    		</property>
    </bean>

    在controller中写一个方法,映射路径:

    @RequestMapping("/unauthorized")
    	public String unauthorized() {
    			return "/403.html";
    	}



  • 黑车轴
    2018-11-21 17:09:33

    多谢分享