使用socket.io管理多个聊天室的正确方法是什么?
所以在服务器上会有类似的东西:
io.sockets.on('connection', function (socket) {
socket.on('message', function (data) {
socket.broadcast.emit('receive', data);
});
});
Run Code Online (Sandbox Code Playgroud)
现在这对一个房间工作正常,因为它向所有连接的人广播消息.您如何向特定聊天室中的人发送消息?
添加.of('/ chat/room_name')?或者在一个房间里存放一个人的阵列?
所以我使用带有socket.io的express有这个问题.我认为这是非常自我解释; 我只需要获取会话并向socket.io请求参数数据.这不能在客户端进行,因为有些房间是私人的.有解决方案吗
io.sockets.on('connection', function (socket) {
socket.join(ROOM ID)
socket.on('send message', function(data) {
NEED USER ID STORED IN session.user
}
})
app.get('/:roomid', function (req, res) {
//req.session.user = THE USER ID
//req.params.roomid = THE ROOM ID
})
Run Code Online (Sandbox Code Playgroud)