【发布时间】:2018-09-25 19:10:25
【问题描述】:
我尝试创建 socket.io 的多个客户端,每个客户端都连接到不同的服务器,但到目前为止,第二个服务器被拒绝连接,第一个服务器断开连接,我认为是因为当我在数组中只留下一个客户端时,everythink没问题。
与两个客户的消息
Uncaught Error: connect ECONNREFUSED 127.0.0.1:10002
function connections() {
var data = {
"clients": [{
"10000": "127.0.0.1",
},
{
"10002": "127.0.0.1",
}]
};
data.clients.forEach(function(client_port, index) {
console.log(client_port + index);
Object.keys(client_port).forEach(function(client_ip) {
console.log(client_ip + " = " + client_port[client_ip]);
var port = client_ip;
var ip = client_port[client_ip];
socket = net.connect(port, ip, function () {
socket.on('data', function (data) {
var dataHex = data.toString('hex');
var dataString = data.toString('utf8');
util.log('get data:' + dataString);
$('response').value += dataString;
arrayparadox = dataString.split(' ');
console.log(arrayparadox[1]);
});
util.log('connected to server ' + client_ip + ':' + client_port);
});
});
});
}
如果我只在数组中留下一个客户,请使用everythink is okai。
【问题讨论】:
-
您是否尝试过设置 CORS 或关闭防火墙?
-
另外,看起来你没有在循环中声明套接字,所以它可能被覆盖了?尝试将 var 放在 socket = net.connect 前面...
-
ECONNREFUSED - 连接时服务器拒绝连接 - 但不应应用 CORS (blog.securityevaluators.com/…)。有服务器端的信息吗?
标签: javascript sockets connection