用户关闭选项卡时注销
Logout when the user close the tab
在我的Django网站上,我想在关闭选项卡或浏览器时自动从网站注销。我的意思是,当我通过关闭选项卡而不是使用注销按钮关闭网站时,在再次输入URL后,我希望看到用户已经从网站注销,以强制用户再次输入用户名和密码。
有没有一种方法可以处理JQuery中关闭选项卡的问题?
提前谢谢。
编辑:onunload&onbeforeunload事件导致在重新加载页面时注销用户。
将注销代码添加到onunload事件中。
window.onunload = function () {
//logout code here...
}
在JQuery中,您可以使用.unload()函数。请记住,您没有太多时间,因此可以发送Ajax请求,但结果可能无法到达客户端。
另一个技巧是打开一个新的小窗口并在那里处理注销。
window.open("logout url","log out","height=10,width=10,location=no,menubar=no,status=no,titlebar=no,toolbar=no",true);
如果你想禁用关闭窗口(或者至少警告用户),你可以使用以下代码:
window.onbeforeunload = function(event) {
//if you return anything but null, it will warn the user.
//optionally you can return a string which most browsers show to the user as the warning message.
return true;
}
另一个技巧是每隔几秒钟对客户端进行一次ping。如果没有回复,假设用户关闭了窗口、浏览器崩溃或网络问题导致聊天会话结束。在客户端,如果你没有收到这个ping包,你可以假设网络连接或服务器有问题,你可以显示注销警告(并可以选择让用户再次登录)。
您可以使用Javascript onunload
&onbeforeunload
事件。在这些事件中,破坏Django的会话cookie。
当你通过链接或浏览器返回按钮离开网站时,这些事件也会被触发,所以如果这真的是你想要的,请小心并三思。
我刚刚遇到了这个。在Django settings.py文件中,您可以添加标志:
SESSION_EXPIRE_AT_BROWSER_CLOSE=真
这将在浏览器关闭时将用户注销请注意,如果仍有其他选项卡或窗口打开,则用户将保持登录状态(浏览器必须完全关闭)。
window.onunload=函数(){//此处注销代码。。。window.open("注销url"、"注销"、"高度=10、宽度=10、位置=no、菜单栏=no、状态=no、标题栏=no,工具栏=no",true);}
此代码有效。这将为注销url打开一个小的弹出窗口。
- 我的单元测试选项是什么
- 如何更改bigquery API中的计费层选项
- 使用Javascript获取所选选项ID
- Selectize.js:如何对整数值的选项进行排序
- 通过js在新选项卡中有条件地打开url
- 按照选项卡索引的顺序循环一个jQuery选择
- 如何在使用selectBoxIt JQuery插件时检测选项更改
- 我们如何在互联网断开连接或用户关闭选项卡/浏览器时调用注销servlet
- 当用户关闭浏览器选项卡时,如何使用 PHP 或 javascript 从我的站点注销用户
- 使用jquery/Javascript在浏览器关闭或选项卡关闭时执行注销
- 用户关闭选项卡时注销
- 当浏览器选项卡中的 url 更改时自动注销
- 流星注销 在选项卡之间不同步
- 当用户从另一个选项卡注销谷歌时,如何执行一些javascript
- 当用户在php中的一个打开的选项卡中注销时,会自动注销所有打开的选项卡
- 如何处理在会话结束时打开多个选项卡的情况下注销用户
- 仅在浏览器或选项卡关闭时注销用户
- 如何关闭浏览器中与特定域相关的所有打开的选项卡,同时使用angular js从其中任何一个选项卡注销
- 我想在 Mozilla 或 IE 8.0 或 Chrome 中的选项卡关闭时注销
- 用户关闭一个选项卡(意味着注销)的许多选项卡,这些都没有重定向到索引