Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc asp.net mvc自定义HandleUnauthorizedRequest_Asp.net Mvc_Asp.net Mvc 3 - Fatal编程技术网

Asp.net mvc asp.net mvc自定义HandleUnauthorizedRequest

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

我正在使用asp.net mvc3

我有一个习惯属性

我必须重写方法HandleUnauthorizedRequest(AuthorizationContext filterContext)

我的源代码如下

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();”;请告诉我有没有更好的办法。