现在我用socket.io 与 express做一个聊天的系统,用户数据是存在mongodb里的,怎么样才能检测到用户离开了这个网站? 注:cookie存在一个月,并且用户可能多个浏览器同时开启这个页面,所有本站页面全关闭才算离开页面。 我应该怎么做??
有没有实时的方法????
回复 (6)
S
session存一个月?
A
什么叫防抖??
A
单独窗口的话可以用 window.onbeforeunload = function() {/* ajax request */} 然后用ajax request通知server 如果是全部窗口的话,当用户打开的时候也要通知server,server要记下用户打开的每个页面 推荐使用redis
X
一直挂一个连接到服务器(设置60s超时, 不管是正常返回还是异常返回 客户端都重新发起连接), 当正在连接时用户关闭浏览器 会触发request的close事件, 这时候就是用户已经离线了
X
发送心跳包。
A
引用 XadillaX发送心跳包。
具体怎么实现?
参与回复
登录后即可参与回复。登录