MVC-过滤器-权限认证
过滤器主要基于特性,aop来实现对MVC管道中插入其他处理逻辑。比如,访问网站,需要检查是否已经登陆,若没登陆跳入登陆界面。

样例:

方法注册

执行效果

当不符合认证时:

上面是方法注册特性。还有类注册,全局注册。
类注册,注意加约束限制
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true)]

单单的仅是类定义会出现异常,陷入死循环。因为每次执行action(包括验证界面对应的action) 都会验证,每次都不符合验证条件,以至于循环进入验证界面

解决办法,加匿名特性,并在验证地方去支持它。


全局注册:


注意:有时候请求是网页访问;有时是ajax请求,需要返回一串json字符串。

原理:
先进入控制器,访问控制器的基类Execute方法




浙公网安备 33010602011771号