ASP.NET - 在浏览器选项卡上注销用户已关闭

时间:2012-06-22 21:05:23

标签: asp.net forms authentication forms-authentication

我需要在浏览器选项卡关闭时可靠地在ASP.NET中注销经过身份验证的用户。推荐的解决方案是什么?

由于

2 个答案:

答案 0 :(得分:0)

通常,您会在会话结束时执行注销逻辑。但是如果您必须检测页面何时关闭,请使用:

<body onunload="performMyLogoutLogic();">
...
...
</body>

答案 1 :(得分:-1)

您可以使用通用处理程序来终止会话并在此之前调用此方法,如下所示:

function CloseSession( )
{
    location.href = 'KillSession.ashx?task=1'; 
}
window.onbeforeunload = CloseSession;

在你的KillSession.ashx中执行此操作

 public void ProcessRequest(HttpContext context)
            {
                if(!String.IsNullOrWhiteSpace(Request.QueryString["task"].toString()))
                {
                 if(Request.QueryString["task"].toString()=="1")
                  {
                    Session["User"]==null;
                    context.Response.ContentType = "text/plain";
                    context.Response.Write("Good Bye!");
                   }
                }
            }