net.connect:重新连接tcp net.connects会产生连接ECONNREFUSED

时间:2015-09-06 21:56:03

标签: node.js

我正在尝试一个tcp服务器客户端连接

{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect' }

第一次客户端连接到服务器的端口和主机时,一切正常。 下次它给出了这个错误。 为什么以及如何重新连接/修复此问题?

概念上,除了内部逻辑,这是服务器代码:

net.createServer( function serverConnection (connection) {

            connection.write('whatver i wana write');

            connection.write("\n");

            connection.on('end', function connectionEnd () {
               console.log("Client Connection Ended");
               connection.unref();
               connection.destroy();
               server.close();
           });


       connection.on('close', function connectionClose() {
          console.log("Connection Closed");
          connection.unref();
          connection.destroy();
          server.close();
       });

       connection.on('error', function connectionErr (err) {
           console.error(err);
           server.close();
       });

    });

1 个答案:

答案 0 :(得分:1)

关闭第一个连接后,您将关闭服务器。当您呼叫server.close()时,服务器将停止侦听新连接。