Asp.net mvc asp.net mvc自定义HandleUnauthorizedRequest
我正在使用asp.net mvc3 我有一个习惯属性 我必须重写方法HandleUnauthorizedRequest(AuthorizationContext filterContext) 我的源代码如下Asp.net mvc asp.net mvc自定义HandleUnauthorizedRequest,asp.net-mvc,asp.net-mvc-3,Asp.net Mvc,Asp.net Mvc 3,我正在使用asp.net mvc3 我有一个习惯属性 我必须重写方法HandleUnauthorizedRequest(AuthorizationContext filterContext) 我的源代码如下 protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext) { switch (unAuthorizedStatus) { case Unautho
protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
switch (unAuthorizedStatus)
{
case UnauthorizedStatus.NonAuthenticated:
// I have a question here.
break;
default: base.HandleUnauthorizedRequest(filterContext); break;
}
}
//我有个问题
如果未能通过用户身份验证(案例UnauthorizedStatus.Nonauthorized),则返回到上一个URL,
我想用JavaScript(或jquery)显示警告窗口警报
请回答。您确定需要覆盖HandleUnauthorizedRequest方法吗 我遵循了下面列出的方法:。这太好了,他们把它包装成MVC4 本质上,您只处理OnAuthorization方法。剩下的部分留给base属性。如果您未经身份验证,它具有自动将您发送到登录页面的良好功能 如果您真的想自动将用户导航回原始页面,您可以按照您最初的想法覆盖该方法,而是将用户发送到一个新的操作方法,并从HttpContext传递返回URL(我认为是指URL)。然后,您可以用html向用户显示消息,然后在等待几秒钟后通过元刷新自动将用户导航回其原始页面
如果最终用户禁用了JS,您的解决方案将无法工作。回答我自己:filterContext.HttpContext.Response.Write(“警报('message');history.back();”;请告诉我有没有更好的办法。