客户端如何通过离开页面处理socket.io断开连接?

Bre*_*ren 2 javascript sockets websocket node.js socket.io

我有一个socket.io applicationnode.js想知道有什么可能性可以简单地关闭浏览器窗口来响应客户端。无论如何要知道这已经完成了吗?什么样的信号可以发送到服务器?

如果我无法判断某个特定客户端是否已断开连接,我还能做什么?

jav*_*ttt 5

当客户端关闭浏览器窗口时,socket.io 会触发一个特殊的“断开连接”事件。

假设您的节点服务器文件中需要 socket.io

var io = require('socket.io');
Run Code Online (Sandbox Code Playgroud)

然后你可以监听每个套接字触发的 'disconnect' 事件:

io.on('connection', function(socket){
  console.log('a user connected');
  socket.on('disconnect', function(){
    console.log('user disconnected');
  });
});
Run Code Online (Sandbox Code Playgroud)

注意 - 这里的套接字是由:

io.on('connection', function(socket){
  console.log('a user connected');
});
Run Code Online (Sandbox Code Playgroud)

来源:http : //socket.io/get-started/chat/