2015-09-06 87 views
-2

伊夫TCP服務器客戶端連接,我嘗試了net.connect:重新連接TCP net.connects產量連接ECONNREFUSED

{ [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(); 
     }); 

    }); 
+0

服務器拒絕連接。問題不在客戶端。誰知道,也許服務器正在限制IP或其他什麼東西的連接數量。 – mscdex

+0

@mscdex添加了骨架代碼。可以看到更新? – user2290820

回答

1

您要關閉服務器的第一個連接關閉後。當您撥打server.close()時,服務器將停止偵聽新連接。

+0

感謝man.silly me – user2290820

+0

你是否熟悉這個客戶端錯誤?:錯誤:此套接字已被另一方終止]代碼:'EPIPE' – user2290820