asp.net mvc 默认身份认证失效事件

ASP.NET 4.0中,使用默认的身份认证,在web.config中配置如下:

<authentication mode="Forms">
  <forms defaultUrl="~/" loginUrl="~/Account/Login" name=".ticket" timeout="30" slidingExpiration="true" />
</authentication>
<authorization>
  <deny users="?" />
</authorization>

默认情况下,身份失效时浏览器会跳转到登录页,并在后面带returnUrl参数,参数值为跳转前的url,现在想重写这个跳转事件,自定义跳转的url以及参数,怎么办?

阅读 2.6k
1 个回答

1.可以自定义 AuthorizeAttribute ,重写其中的 OnAuthorization 或 HandleUnauthorizedRequest 方法。
2.如果使用了自定义的 BaseController ,也可在 BaseController 中进行处理。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进