发送消息到所有连接的客户端socket.io

时间:2019-03-13 14:47:52

标签: websocket socket.io

我正在使用以下代码将消息发送到特定的客户端sessionId。

  

this.sockets [sessionId] .json()。send(message)

但是我不知道如何将消息发送到所有连接的客户端(浏览器),而不是发送给一个。

1 个答案:

答案 0 :(得分:0)

查看此备忘单

仅发送给发件人客户端

socket.emit('message', "this is a test");

发送给所有客户端,包括发件人

io.emit('message', "this is a test");

发送给除发件人以外的所有客户端

socket.broadcast.emit('message', "this is a test");

发送给“游戏”房间(频道)中的所有客户(发件人除外)

socket.broadcast.to('game').emit('message', 'nice game');

发送给“游戏”房间(频道)中的所有客户,包括发件人

io.in('game').emit('message', 'cool game');

仅在发送方客户端位于“游戏”房间(频道)时发送给发送方客户端

socket.to('game').emit('message', 'enjoy the game');

发送到名称空间“ myNamespace”中的所有客户端,包括发件人

io.of('myNamespace').emit('message', 'gg');

发送到单独的套接字ID

socket.broadcast.to(socketid).emit('message', 'for your eyes only');