关闭窗口后立即销毁Session

本文介绍了一种在用户非法关闭浏览器窗口时触发特定事件的方法,并通过JavaScript判断条件执行Session销毁,防止非法操作带来的安全风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当用户非法关闭窗口时,将触发nunload事件,所以可以在此定位到另一个页面,进行session的销毁。
代码如下:

 1<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
 2
 3<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 4
 5<html xmlns="http://www.w3.org/1999/xhtml" >
 6<head runat="server">
 7    <title>无标题页</title>
 8<script  language="javascript">
 9
10function ClosePage()
11{
12if((window.screenLeft>=10000 && window.screenTop>=10000)||event.altKey)
13 {
14   window.location.href="/ClosePage.aspx" 
15  }

16}

17
18</script>
19</head>
20<body  onunload="ClosePage()">
21    <form id="form1" runat="server">
22    <div>
23        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /></div>
24    </form>
25</body>
26</html>
在ClosePage.cs页面的  Page_Load销毁如下:     Session.Abandon();    
注意:当刷新页面的时候也会触发onunload事件,所以需要判断是否进行关闭再执行Session的销毁操作。即:
if((window.screenLeft>=10000 && window.screenTop>=10000)||event.altKey)
{


   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值