更新数据库表并在浏览器关闭时终止会话

时间:2011-07-12 14:28:28

标签: javascript jquery .net browser

当用户关闭浏览器/标签页(IE,FF,Chrome,Opera和Safari)时,我需要更新表格。

我将卸载事件放在MasterPage中,但卸载事件仅在第一次触发时触发。其他所有卸载事件都没有解雇。

2 个答案:

答案 0 :(得分:4)

如果用户在关闭浏览器时仍然登录,beforeunload事件将执行您想要的操作。

但是你永远无法100%确定参加活动。

用户可能会失去网络连接,或者崩溃他们的计算机等,这会产生相同的效果,但你永远不会收到通知。

由于这是一个客户端操作,它可能被恶意脚本拦截或被用户黑客攻击。

底线是: NOT 依赖此功能。即使您从未收到浏览器被关闭的通知,您也需要允许您的会话自然死亡。执行此操作的标准方法是在一段时间不活动后超时。

如果你打算允许这样做,是否有必要在浏览器关闭时主动杀死会话?你也可以让他们在超时时自然死亡。

答案 1 :(得分:0)

jQuery(window).bind('beforeunload',function(){
      //do what ever
});
相关问题