node.js - 如何在Socket.IO中一次性离开socket所连接的所有房间

标签 node.js websocket socket.io

我有一些代码用来连接多个房间。在代码中的某个时刻,我想一次离开所有房间,而不断开 socket 。是否有可能做到这一点?如果是,那我该怎么做?提前谢谢..

我正在使用 socket.IO

最佳答案

这是可能的。您可以在不断开 socket 的情况下离开房间。仅当您调用 socket.disconnect() 时,套接字才会断开连接。

为此,您必须维护每个客户加入和离开的房间列表。要离开所有房间,遍历这个列表并调用 socket.leave(roomname);

关于node.js - 如何在Socket.IO中一次性离开socket所连接的所有房间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10895925/

相关文章:

concurrency - websocket 发送/接收线程安全(例程安全)吗?

javascript - 有什么方法可以用 socket.io 发送函数吗?

javascript - 带有 node.js 的 http 请求在发送后无法设置 header

javascript - Windows上的 Node npm错误寻找工具版本

networking - 移动网络中的持久 TCP 连接?

multithreading - 无法连接时停止 channel

javascript - 无法设置远程应答 sdp : Called in wrong state: stable

javascript - 使用 Node.js 和 Socket.IO 提供静态文件

javascript - 如何将 Buffer.from() 与 crypto.timingSafeEqual() 一起使用?

node.js - NodeJs GraphQL 动态查询变量