0

我正在开发一个聊天系统,我必须在用户离开聊天之前删除数据库中的数据......

是否可以执行用户试图离开时触发的操作?

4

4 回答 4

2

要检测用户何时离开,我建议您对用户进行定期 ping(或通过让 AJAX 每 X 分钟向服务器发布一次 pong 来从用户那里)。

如果服务器在 X * Y 分钟内没有收到任何 pong,则删除数据。

对于您的情况,X 可以是 1,Y 可以是 10,因此离开聊天室的用户的数据永远不会超过 10 分钟。

于 2012-07-28T11:41:59.520 回答
0

用户通过关闭浏览器按下退出按钮离开聊天。

在后者的情况下,它是直截了当的。客户端的浏览器会发送一个 AJAX 请求通知浏览器。在前一种情况下,检测用户何时离开网页的最佳方法是什么?

于 2012-07-28T11:51:25.990 回答
0

你可以这样做...使用 xmlhttp 请求和window.onbeforeunloadjavascript

于 2012-07-28T14:29:56.367 回答
-1

你不能这样做——例如,如果我刚刚拔掉了电脑上的插头,你的软件应该做什么?

你最好的选择是暂停。

于 2012-07-28T11:45:23.930 回答