如何通过离开页面来处理socket.io断开连接?
我有一个与node.js
的socket.io application
,并想知道有什么可能存在的响应客户端只是closures他们的浏览器窗口。 无论如何知道这已经完成了吗? 什么样的信号可以发送到服务器?
如果我没有办法说明某个客户是否断开了连接,我还能做什么?
我有一个与node.js的socket.io应用程序,并想知道有什么可能存在的响应客户端只是closures他们的浏览器窗口。 无论如何知道这已经完成了吗? 什么样的信号可以发送到服务器?
浏览器closures连接时,node.js端的套接字将收到“disconnect”事件,然后您可以对其进行响应。
当客户端closures浏览器窗口时,socket.io会触发一个特殊的“断开”事件。
假设你已经在节点服务器文件中需要socket.io
var io = require('socket.io');
那么你可以监听每个套接字触发的'disconnect'事件:
io.on('connection', function(socket){ console.log('a user connected'); socket.on('disconnect', function(){ console.log('user disconnected'); }); });
注 – 套接字在这里给出:
io.on('connection', function(socket){ console.log('a user connected'); });
来源: http : //socket.io/get-started/chat/
你想在卸载触发器上通过套接字发送消息。
<body onunload="sendBrowserClosedMessageToServer()">
或者无论你怎么称呼你的钩子。