「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Socket.IO ブロードキャストから送信者を除外するには?

Socket.IO ブロードキャストから送信者を除外するには?

2024 年 11 月 9 日に公開
ブラウズ:621

How to Exclude the Sender from Socket.IO Broadcasts?

送信者を除くすべてのクライアントに応答を送信

接続されているすべてのクライアントにメッセージをブロードキャストするには、io.sockets.emit() 関数を使用します。使用済み。ただし、送信者をブロードキャストの受信から除外したい場合は、クライアント側で送信者の ID を確認するよりも簡単な方法について疑問に思うかもしれません。

Socket.IO では、socket.broadcast プロパティによって次のことが提供されます。このシナリオの解決策。 socket.broadcast.emit() を使用すると、送信者を除くすべてのクライアントにメッセージを送信できます。次に例を示します。

socket.on('cursor', function(data) {
  socket.broadcast.emit('response', data);
});

この例では、クライアントが「カーソル」イベントを送信すると、サーバーは受信したデータを、送信者を除く他の接続されているすべてのクライアントにブロードキャストします。

ソケットの概要は次のとおりです。参照用の .IO 出力関数:

  • socket.emit(): 送信側クライアントにメッセージを送信します。 only.
  • io.emit(): 送信者を含むすべてのクライアントにメッセージを送信します。
  • socket.broadcast.emit(): 送信者を除くすべてのクライアントにメッセージを送信します。
  • socket.broadcast.to(): 特定のルームまたはチャネル内のすべてのクライアントにメッセージを送信します。 sender.
  • socket.to(): 送信者クライアントが特定のルームまたはチャネルにいる場合にのみ、メッセージを送信者クライアントに送信します。
  • io.in(): メッセージを送信者に送信します。送信者を含む、特定のルームまたはチャネル内のすべてのクライアント。
  • socket.broadcast.to(socketid): 特定のクライアントにメッセージを送信します。 ID.
  • io.of(): 送信者を含む、特定の名前空間内のすべてのクライアントにメッセージを送信します。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3