2016-05-13 4 views
1

socket.ioの新しいバージョンを使用しています。ソケットのリストを取得する方法を理解できませんオブジェクト。私は、このいずれかのようにいくつかのチュートリアルとStackOverflowの回答を追ってきました:socket.io v1 +の接続されたソケットオブジェクト(ソケットIDではない)のリストを取得するには?

How to get all the sockets connected to Socket.io

私もマニュアルを見てきたが、それはあまり役立っていません。私が見つけたすべての記事はsocketIdsを取得する方法を説明していますが、ソケット自体が必要なので、特定のソケットだけを発行することができます。

実際のソケット自体はどうやって入手できますか、それとも新しいバージョンのソケットではこれ以上使用できませんか?

答えて

2

あなたはカップルの選択肢を持つことができます。

// An object with socket.id as property and socket object as value 
// You could iterate this with for/in or use `Object.keys()` to get the ids 
// and then access each socket by id 
// io.sockets.connected 

var ids = Object.keys(io.sockets.connected); 
ids.forEach(function(id) { 
    var socket = io.sockets.connected[id]; 
    // do something with socket here 

}); 

// an array of sockets which you can iterate directly as an array. 
// io.sockets.sockets 

io.sockets.sockets.forEach(function(socket) { 
    // do something with socket here 

}); 

あなたはまた別に名前空間にアクセスすることができます。

// array of sockets in this namespace 
io.nsps['/'].sockets 

// map of socket ids in this namespace 
io.nsps['/'].connected 
関連する問題