MVC:通过Ajax处理身份验证超时

时间:2020-05-05 04:56:00

标签: ajax asp.net-mvc asp.net-ajax

因此,我们遇到了一些问题,即用户尝试在网站上执行操作时遇到错误,我们认为这可能是用户登录超时/过期的结果。

我想知道是否有一种方法可以覆盖ajax调用尝试的内容并重定向到登录页面?

我希望我们不必进入站点中的每个ajax调用,并添加诸如if(response.notLoggedIn)之类的东西,并从视图中进行重定向。

任何建议将不胜感激。 干杯。

1 个答案:

答案 0 :(得分:0)

所以我认为您无法在ajax调用中返回整个视图以中止正在发生的事情是错误的。

在身份验证控制器中,我有这个。 注意:如果请求来自过期的连接,它将始终在此处结束。

if (Request.IsAjaxRequest())
        {
            TempData["toastrMessage"] = "Your session has expired.";
            TempData["toastrType"] = "Error";
            return View("LoginReload");
        }

没有错误会从ajax调用中重新调整,并且页面会直接进入登录页面。