Bagaimana untuk Menghantar Respons kepada Semua Pelanggan Kecuali Pengirim dalam Socket.IO?
Socket.IO menawarkan pelbagai kaedah untuk komunikasi antara pelanggan dan pelayan. Untuk menghantar mesej kepada semua pelanggan, anda boleh menggunakan io.sockets.emit('respons', data);. Walau bagaimanapun, apabila anda perlu mengecualikan pelanggan yang menghantar daripada menerima respons, pendekatan ini menjadi pendek.
Penyelesaian Mudah: socket.broadcast.emit()
The penyelesaian terletak pada menggunakan kaedah socket.broadcast.emit(). Kaedah ini menghantar mesej kepada semua pelanggan yang disambungkan kecuali yang menghantarnya. Penggunaannya adalah mudah:
<code class="javascript">socket.on('cursor', function(data) { socket.broadcast.emit('response', data); });</code>
Dalam contoh ini, apabila pelanggan memancarkan acara 'kursor', pelayan menghantar semula data kepada semua pelanggan lain menggunakan socket.broadcast.emit().
Pilihan Penyiaran Tambahan
Socket.IO juga menyediakan pilihan penyiaran tambahan yang membolehkan kawalan lebih terperinci:
Dengan memahami kaedah penyiaran ini, anda boleh mengurus komunikasi antara pelanggan dan pelayan dengan cekap, memastikan mesej sampai kepada penerima yang dimaksudkan sahaja.
Atas ialah kandungan terperinci Bagaimana untuk Mengecualikan Pengirim daripada Menerima Respons dalam Socket.IO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!