Node.jsは私がしばらく興味を持っていたものであり、私のプロジェクトの1つでそれを使用してマルチプレイヤーゲームを作成しました。
io.sockets.in().emit()
そしてsocket.broadcast.to().emit()
私たちはSocket.ioの部屋で使うメイン2 EMIT法です(https://github.com/LearnBoost/socket.io/wiki/Rooms)部屋には、接続されたクライアントの簡単な分割を可能にします。これにより、接続されたクライアントリストのサブセットを使用してイベントを発行でき、それらを管理する簡単な方法が提供されます。
これにより、接続されたクライアントリスト(ルームと呼びます)のサブセットを管理し、主要なsocket.io関数io.sockets.emit()
やのような同様の機能を利用できsocket.broadcast.emit()
ます。
とにかく、私は説明するためにコメント付きのサンプルコードを与えるようにします。それが役立つかどうかを確認してください。
Socket.ioルーム
i)io.sockets.in()。emit();
/* Send message to the room1. It broadcasts the data to all
the socket clients which are connected to the room1 */
io.sockets.in('room1').emit('function', {foo:bar});
ii)socket.broadcast.to()。emit();
io.sockets.on('connection', function (socket) {
socket.on('function', function(data){
/* Broadcast to room1 except the sender. In other word,
It broadcast all the socket clients which are connected
to the room1 except the sender */
socket.broadcast.to('room1').emit('function', {foo:bar});
}
}
Socket.io
i)io.sockets.emit();
/* Send message to all. It broadcasts the data to all
the socket clients which are connected to the server; */
io.sockets.emit('function', {foo:bar});
ii)socket.broadcast.emit();
io.sockets.on('connection', function (socket) {
socket.on('function', function(data){
// Broadcast to all the socket clients except the sender
socket.broadcast.emit('function', {foo:bar});
}
}
乾杯