如何检测客户端与服务器断开连接的情况?

时间:2018-12-19 00:18:47

标签: javascript node.js sockets

我使用下面的代码检测客户端何时连接到服务器并为该客户端分配套接字:

// setup
const io = require('socket.io')(server);
io.sockets.on('connection', socket => { // client is connecting to server });

断开连接时将检测什么代码?我会假设像这样,但我不确定。

io.sockets.on('disconnect', socket => { // client is disconnecting from the server });

更好的是,它将是io.sockets

上的事件列表

2 个答案:

答案 0 :(得分:1)

请确保您正在侦听绑定到disconnect事件的函数中socket参数上的connection事件。

// setup
const io = require('socket.io')(server);
io.sockets.on('connection', socket => {
    // client is connecting to server

    socket.on('disconnect', reason => {
        // client is disconnecting from the server
    });
});

文档可在此处找到:https://socket.io/docs/server-api/#Event-'disconnect'

答案 1 :(得分:1)

在sockets.io中,每个客户端被视为服务器上的唯一套接字。您可以使用套接字变量来访问断开事件

socket.on('disconnect', () => {
});

官方文档为here