[英]Using Jquery unload function to delete user from online users list
我想知道有没有一种方法可以通过$(window).unload
jQuery函数从在线用户列表中删除用户? 或继续使用PHP来检查它? 我认为这不是一个正确的方法,因为用户可以编辑它,但我需要更多的理由。 代码示例:
<script src="jquery.min.js"></script>
<script>
$(window).unload(function() {
$.ajax({
type: "GET",
url: 'http://localhost/delete_session.php',
data: "id=" + "session id";
});
});
</script>
谢谢!
多个选项卡不能很好地工作:如果用户在两个不同的选项卡中打开您的应用程序,关闭两个选项卡中的任何一个将删除该会话,另一个选项卡将变为“不可用”。
您不应该仅仅依靠客户端的行为来管理您的会话:客户端的浏览器可能会错误地退出(程序错误,电池耗尽, kill -9
等等)并且不会在退出时执行卸载回调。
在线列表的正确方法可能是使用心跳请求。
您的javascript向服务器发送小请求,表明它们“活着”。
如果所有页面都被用户关闭,心跳停止,您以某种方式将其从服务器上的在线用户列表中删除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.