Node.js 如何/应该删除旧的websocket连接?
我在Node.js上使用“ws”,我不确定如何删除旧连接(旧连接是断开连接还是空闲连接,这可能是两个不同的问题)。我是否需要为这两种类型手动实现此功能 为此,首先需要在服务器端维护一个实时web套接字连接对象列表。当用户通过关闭浏览器或任何其他方式从web套接字断开连接时,您需要从列表中删除用户web套接字连接对象 服务器端代码。您可以在以下代码中引用members数组来处理此问题Node.js 如何/应该删除旧的websocket连接?,node.js,websocket,Node.js,Websocket,我在Node.js上使用“ws”,我不确定如何删除旧连接(旧连接是断开连接还是空闲连接,这可能是两个不同的问题)。我是否需要为这两种类型手动实现此功能 为此,首先需要在服务器端维护一个实时web套接字连接对象列表。当用户通过关闭浏览器或任何其他方式从web套接字断开连接时,您需要从列表中删除用户web套接字连接对象 服务器端代码。您可以在以下代码中引用members数组来处理此问题 io.on("connection",function(client) { client.on("join",
io.on("connection",function(client)
{
client.on("join",function(data)
{
members[membercount] = client;
membername[membercount] = data;
membercount++;
for(var i =0 ;i <members.length;i++)
{
members[i].emit("message",membername);
}
});
client.on("messages",function(data)
{
for(var i =0 ;i <members.length;i++)
{
if(members[i].id !== client.id)
{
members[i].emit("message",data);
}
}
});
client.on("disconnect",function(data)
{
for(var i =0;i<members.length;i++)
{
if(members[i].id === client.id )
{
membercount--;
members.splice(i,1);
membername.splice(i,1);
}
}
for(var i =0 ;i <members.length;i++)
{
members[i].emit("message",membername);
}
});
});
io.on(“连接”,功能(客户端)
{
client.on(“连接”,函数(数据)
{
成员[membercount]=客户;
membername[membercount]=数据;
membercount++;
对于(var i=0;i如果客户端没有很好地断开连接怎么办?心跳失败还是什么?断开连接是否仍然被触发?谢谢!因为它是web套接字,所以您的节点js框架将侦听打开的web套接字连接。每当浏览器关闭时,它将通知断开回调方法。您必须管理断开连接通过删除关闭的实例。希望这对你有用!!!!!!!