socket.io Emit cheatsheet

时间:2022-07-23
本文章向大家介绍socket.io Emit cheatsheet,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1.发送给客户端

  socket.emit('hello', 'can you hear me?', 1, 2, 'abc');

2.给所有客户端发送,除了发送的人

  socket.broadcast.emit('broadcast', 'hello friends!');

3.给「game」房间等所有用户发送,除了发送的人

  socket.to('game').emit('nice game', "let's play a game");

4.给「game1」和「game2」的用户发送,除了发送的人

  socket.to('game1').to('game2').emit('nice game', "let's play a game (too)");

5.给「game」房间所有的客户端发送,包括发送的人

  io.in('game').emit('big-announcement', 'the game will start soon');

6.给「myNamespace」命名空间下的所有客户端发送,包括发送的人

  io.of('myNamespace').emit('bigger-announcement', 'the tournament will start soon');

7.单独给指定socketid的客户端发送(私人信息)

  socket.to(<socketid>).emit('hey', 'I just met you');

8.发送确认信息

  socket.emit('question', 'do you think so?', function (answer) {});

9.不压缩发送

  socket.compress(false).emit('uncompressed', "that's rough");

如果客户端没有准备接收该信息,则发送等信息会被销毁

  socket.volatile.emit('maybe', 'do you really need it?');

给当前节点所有客户端发送(当使用多节点的时候)

  io.local.emit('hi', 'my lovely babies');