尝试仅发送到socket.io中的房间,但它会发送给连接到服务器的每个人

时间:2016-03-27 20:41:37

标签: javascript node.js canvas socket.io

这是我的连接函数,我将套接字添加到SOCKET_LIST全局,以便稍后我可以迭代它。

Player.onConnect会进行初始化,如果没有人打开则会创建一个新房间,如果有人在等待对手,则会加入一个新房间。

git mv
然后,这就是我尝试向同一房间内的用户发送所有数据的地方..但不是仅向房间中的人发送数据,而是将数据发送给连接到服务器的每个人。

io.sockets.on('connection', function(socket) {


    SOCKET_LIST[socket.id] = socket;

    Player.onConnect(socket);

});

当我在console.log中从服务器登出房间ID时,它会相应地工作,就像我将从2个客户端加入,然后第三个将调出一个新的房间ID,然后是第五个,等等。游戏假设是2人游戏,如果其他人试图加入游戏则会创建新房间。

1 个答案:

答案 0 :(得分:0)

for (var i in SOCKET_LIST) 

遍历您的SOCKET_LIST并获取所有套接字,这就是服务器向每个人发出的原因。