我通过TCP套接字连接到节点服务器,并且在每次后续调用时都会出现写入套接字的数据问题 .

我的服务器调用以下函数写入每个连接的客户端:

clients.forEach(function (client) {
    var string = "hello";
    client.write(string);
    client.on('data', function(data) {
        console.log(data.toString());
    });
});

这适用于并向每个连接的套接字广播字符串“hello” . 我们的想法是每个客户端都会回复一个响应,该响应将输出到console.log .

在每个客户端,我有以下内容:

client.on('data', function(data) {
    console.log(data);  
    var response = "Hello back";
    console.log('RES: ' + response);
    client.write(response);
});

每个客户端都会收到hello并响应请求 . 出现的问题是,在每个N响应上,服务器从每个客户端接收N次所有内容 .

因此,在第一次交换时它很简单

你好

你好回来

但在第二个是:

你好

你好回来

你好回来

任何想法为什么会发生这种情况?我是否需要在每个交易所或其他东西上冲洗插座?