用户注销时的AJAX请求

时间:2013-03-25 18:31:26

标签: asp.net ajax webforms

我在ASP.net应用程序中发出许多 AJAX请求,但是现在,当用户注销时,登录表单只会显示在我使用响应文本的任何位置。

我该如何处理这个问题?我无法重新设置所有响应的概念,因此如果用户退出,我会得到一定的响应,因为它们太多

有没有办法可以处理所有回复?所有响应都由Generic Halndlers .ashx在某个文件夹中处理。

1 个答案:

答案 0 :(得分:1)

您可以使用comman函数在整个网站上实现此功能,以验证会话。这可以通过两步流程实现

STEP1:

在ajax完成函数中调用validateSession,您将根据会话/登录页面内容重定向到登录页面。

complete: function(XHR, status){   //handle session out
            validateSession(XHR.responseText);
        },

STEP2:

现在通过检查登录页面中的一些文本来处理会话和重定向。在我的示例中,我放置了:SESSION EXPIRED:登录页面中的字符串

   function validateSession(strAjaxOutput, strStatus, objXhr)
    {
    if(("undefined" != typeof strStatus) && ("undefined" != typeof objXhr))
    {
    strAjaxOutput = objXhr.responseText;
    }
    var reg = /:SESSION EXPIRED:/;
    if(reg.test(strAjaxOutput))
    {
    window.location = "http://www.myloginpage.com"; //redirect to login page
    return false;
    }
    else
    {
    return true;
    }
    }