shiro AccessControlFilter的isAccessAllowed和onAccessDenied方法区别
AccessControlFilter 是 Shiro 框架中的一个过滤器,用于对请求进行访问控制和权限校验。其中 isAccessAllowed 和 onAccessDenied 是两个重要的方法。它们的区别如下:
-
isAccessAllowed方法:这个方法用于判断当前请求是否被允许访问。在请求到达过滤器链中的AccessControlFilter时,会首先调用isAccessAllowed方法进行判断。如果返回true,则表示请求允许访问,会继续执行后续的过滤器链;如果返回false,则表示请求不允许访问,会直接进入onAccessDenied方法进行后续处理。 -
onAccessDenied方法:当isAccessAllowed方法返回false时,表示请求不允许访问,会进入onAccessDenied方法。在该方法中,可以进行一些拒绝访问的处理,比如返回错误信息、跳转到登录页面等。同时,也可以通过调用getSubject().login()方法来重新登录,然后再次调用isAccessAllowed方法进行访问权限的判断。
总结起来,isAccessAllowed 方法用于判断请求是否允许访问,如果不允许,则进入 onAccessDenied 方法进行后续处理
原文地址: http://www.cveoy.top/t/topic/iXRM 著作权归作者所有。请勿转载和采集!