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