关闭浏览器或退出网站时注销

时间:2012-10-15 12:30:24

标签: c# asp.net session logout browser-close

  

可能重复:
  Is there any way to know that user leaving a page with asp.net?

离开我的网络应用程序时如何执行自动注销或关闭会话?

(就像GMAIL一样,当你不检查“记住我”时,如果你关闭浏览器或移动到其他页面,则会将你注销)。

谢谢,Inbal。

2 个答案:

答案 0 :(得分:0)

您可以使用'onbeforeunload'事件并使用Session.Abandon打开弹出窗口以终止会话

或者如果您正在使用表单身份验证,则可以选择在使用超时

的特定时间后终止会话

答案 1 :(得分:0)

<script type="text/javascript">

        var clicked = false;
        function CheckBrowser() {
            if (clicked == false) {
                //Browser closed
            }
            else {
                //redirected
                clicked = false;
            }
        }

        function Logout() {
            if (clicked == false)//browser is closed
            {
                window.location = "../Master/Logoff.aspx";
            }
        }
    </script>
  1. 将此JavaScript放在母版页或内容页的头部

  2. 在身体部位的onbeforeunload事件上调用注销方法,例如

    <body onbeforeunload="Logout()" onclick="clicked=true;">

  3. 从数据库中删除受尊重的用户条目并在被调用页面的page_load事件上终止会话,例如:

  4. 网页名称:Logoff.aspx

    Protected void Page_Load(Object Sender,EventArgs e)
    {
             //Write Delete User From Database Code Here.
    }
    

    Log out user on browser close

    粘贴