我使用套接字。也许我的想法是错的。
实际上,我用
打开了一个命名空间服务器端var nsp = io.of('/myNamespace');
客户端连接
var socket = io.connect('http://localhost/myNamespace');
我可以开始沟通没有问题。服务器端I用
捕获信号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();
但我有错误,因为套接字。io 1.0
我不想创建空间,但也许这是我的错误?
谢谢你的帮助,MagicDenver
如果能帮到别人,我用node js工作,所以我创建了一个值:
app.set(idNameSpace,[]);
和push socket当我有一个新的连接
您应该使用io.of(namespace)函数来获得连接的客户端
for (var id in io.of('/namespace').connected) {
var s = io.of('/namespace').connected[id];
s.disconnect();
}
如果您不知道名称空间并且您在套接字中。在语句中,可以使用socket.nsp.connected
而不是io.of('/namespace').connected