突然想到的:“当用户关闭某页面时自动将其Session清空”的方法。
我记得以前有很多人问:在某些用户登陆后的页面,当其关闭后自动将其登出。这样的问题。
由于Web本身的限制,在服务器上执行清空总是不及时的。
今天突然想起一个反向思维的方法。不敢独用,给大家说说,看看我的方法行不。
原理:Session是由Cookies来判断的,也就是说如果Cookies不存在了,那么Session也就无法存取。
那么我的方法就是,在客户端用js清空Cookies。
测试方法,建立一个Asp页面写入以下客户端脚本。
<script>
document.write(document.cookie);
document.cookie = "ASPSESSIONIDCCCATTAT";
</script>
浏览时刷新页面,会发现每一次的ASPSESSIONIDCCCATTAT值是不同的。也就是说,我们的SessionId换了。
如果将document.cookie = "ASPSESSIONIDCCCATTAT";语句放入window.onunload事件中触发,那么就完成了将用户登出的功能。变自向的等于Session被清空。