繁体   English   中英

使用Jquery卸载功能从在线用户列表中删除用户

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM