我想用多个连接测试我的engine.io服务器。 我试图在循环中打开套接字,但输出只是一个套接字。
在socket.io-client中,我添加了forceNew: true
并解决了问题,但没有使用engine.io-client。
for (var i=0;i<10;i++){
var socket = require('engine.io-client')('ws://localhost');
socket.on('open', function(){
console.log('socket opened : '+socket.id);
socket.on('message', function(data){
console.log('data is '+data);
});
socket.on('close', function(){
console.log('socket closed : '+socket.id);
});
});
}
答案 0 :(得分:0)
使用socket.io-client,您必须设置multiplex: false
。
它为给定的URL创建一个新的Manager,并尝试 重新使用现有的Manager进行后续调用,除非 多路复用选项与false一起传递。传递此选项相当于传递'force new connection':true。
更多信息:http://socket.io/docs/client-api/
然而,“engine.io-client”似乎没有这样的实现,我认为不会有。
构建实时应用程序的推荐框架是Socket.IO,因为它为实际应用程序提供了基本功能,如多路复用,重新连接支持等。