【发布时间】:2018-03-03 03:12:26
【问题描述】:
我正在使用 NodeJS、ExpressJS 和 Socket.IO。现在是一对一的用户聊天室。我可以简单地将他们两个订阅到特定的聊天室并通过 Socket.IO 更新消息。 但是我陷入了这样一种情况,让我们说我有以下聊天室。
const rooms = [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ];
我只想向房间4, 7, 8, 10 广播某条消息我怎么能从服务器端做到这一点。
通常,当我必须在一个房间内发送消息时,我会执行以下操作
const roomid = 4;
global.io.sockets.in(roomid).emit('new message', { message: newPost });
但是对于这个用例,我有多个房间,如果他们的套接字连接已启动(意味着用户在线),我想同时向特定房间发出一条消息。
【问题讨论】: