Monday, February 4, 2019

How to clear/kill session when browser closed

I'll explain how to clear/kill all session when we close the browser or tab.We need to know how to detect the browser close event and clear the session.It does that by sending a Jquery ajax call when the browser is closed. 
Here for clear session, I am using WebService.

Designer Source Code :


<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
    <title>ClearSession</title> 
    <script src="https://code.jquery.com/jquery-3.1.1.min.js" ></script>
    <script type="text/javascript"> 
        $(document).ready(function () { 
            window.addEventListener('beforeunload', recordeCloseTime);            
        }); 
         
        function recordeCloseTime() 
        { 
            $.ajax({ type: "POST", 
              url: "ServiceToClearSession.asmx/ClearAllSession",
            });              
        } 
         
    </script> 
</head>     
<body> 
    <form id="DefaultForm" runat="server"> 
    <div> 
    </div> 
    </form> 
</body> 
</html>


Web Service:

public class ServiceToClearSession : System.Web.Services.WebService
{
    public ServiceToClearSession()
    {

        //Uncomment the following line if using designed components 
        //InitializeComponent(); 
    }

    [WebMethod(EnableSession = true)]
    public void ClearAllSession()
    {
        HttpContext.Current.Session.Abandon();
        HttpContext.Current.Session.Clear();
    }
}


We should need to add this code to Master Page. When we want to clear session in all pages.

0 comments:

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More