首頁 > web前端 > js教程 > 主體

如何從 Socket.IO 廣播中排除發送者?

Barbara Streisand
發布: 2024-10-31 02:02:29
原創
232 人瀏覽過

How to Exclude the Sender from Socket.IO Broadcasts?

向發送者以外的所有客戶端發送回應

要向所有連接的客戶端廣播訊息,io.sockets. emit() 函數是用過的。但是,當您想要排除發送者接收廣播時,您可能想知道比在用戶端檢查發送者 ID 更直接的方法。

在 Socket.IO 中,socket.broadcast 屬性提供了針對這種情況的解決方案。透過使用socket.broadcast.emit(),您可以向除發送者之外的所有用戶端發送訊息。這是一個範例:

<code class="javascript">socket.on('cursor', function(data) {
  socket.broadcast.emit('response', data);
});</code>
登入後複製

在此範例中,當客戶端發送「遊標」事件時,伺服器將收到的資料廣播到所有其他連線的用戶端,不包括傳送者。

這裡是Socket.IO 發出函數的總結供您參考:

  • socket.emit():僅向發送者客戶端發送訊息。
  • io.emit():發送向所有客戶端(包括發送者)發送訊息。
  • socket.broadcast.emit():傳送訊息給除發送者以外的所有客戶端。
  • socket.broadcast.to():發送向特定房間或頻道中除發送者之外的所有客戶端發送訊息。
  • socket.to():僅當發送者用戶端位於特定房間或頻道中時才發送訊息給發送者用戶端。
  • io.in():向特定房間或頻道中的所有客戶端發送訊息,包括發送者。
  • socket.broadcast.to(socketid):傳送訊息至特定客戶端 ID。
  • io.of():向特定命名空間中的所有客戶端發送訊息,包括發送者。

以上是如何從 Socket.IO 廣播中排除發送者?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!