2014-07-18 141 views
0

我使用socket.io 1.0工作,也許我錯了我的概念。Socket.io-1.0從命名空間獲取客戶端

其實,我打開一個命名空間服務器側

var nsp = io.of('/myNamespace'); 

和客戶連接與

var socket = io.connect('http://localhost/myNamespace'); 

我就可以開始沒有問題的溝通。 服務器端我趕上信號與

nsp.on('connection', function(socket){ 
    socket.on('disconnect', function(){ 
     //problem here 
    }); 
}); 

在我想斷開連接到我的命名空間所有插座斷開,所以我試圖做

for(var myParticipantID in io.sockets.adapter.nsp.connected) 
{ 
    io.sockets.adapter.nsp.connected[myParticipantID].disconnect(); 
} 

,但它不工作...我沒有錯誤,但客戶端仍連接 我試着用

io.sockets.nsp.clients(); 

但我有錯誤,因爲socket.io 1.0

我不想創建空間,但也許這是我的錯誤?

感謝您的幫助, MagicDenver

回答

0

如果它會幫助別人, 我與節點工作的js所以我創建了一個值:

app.set(idNameSpace,[]); 

,推動插座時,我有一個新的連接

0

您應該使用io.of(namespace)函數來獲取連接的客戶端。

for (var id in io.of('/namespace').connected) { 
    var s = io.of('/namespace').connected[id]; 

    s.disconnect(); 
} 

如果你不知道的命名空間,你在一個socket.on語句,你可以使用socket.nsp.connected代替io.of('/namespace').connected

相關問題