Nodejs和Java之间的连接 当java客户端连接到nodejs服务器,然后显示我错误,

我在node.js和客户端上有一个服务器。 当Java的客户端连接到Nodejs服务器时,它会显示我下面给出的错误。

我在node.js上有一个服务器

const net = require('net'); const server = net.createServer((c) => { // 'connection' listener console.log('client connected'); c.on('end', () => { console.log('client disconnected'); }); c.write('hello from server\r\n'); c.pipe(c); }); server.on('data', ()=>{ Console.log(data); }); server.on('error', (err) => { throw err; }); server.listen(6969, () => { console.log('server bound'); }); 

我有一个Java代码。

 public class NodeJsEcho { // socket object private Socket socket = null; public static void main(String[] args) throws UnknownHostException, IOException, ClassNotFoundException { // class instance NodeJsEcho client = new NodeJsEcho(); // socket tcp connection String ip = "127.0.0.1"; int port = 6969; client.socketConnect(ip, port); // writes and receives the message String message = "message123"; System.out.println("Sending: " + message); String returnStr = client.echo(message); System.out.println("Receiving: " + returnStr); } // make the connection with the socket private void socketConnect(String ip, int port) throws UnknownHostException, IOException{ System.out.println("[Connecting to socket...]"); this.socket = new Socket(ip, port); } // writes and receives the full message int the socket (String) public String echo(String message) { try { // out & in PrintWriter out = new PrintWriter(getSocket().getOutputStream(), true); BufferedReader in = new BufferedReader(new InputStreamReader(getSocket().getInputStream())); // writes str in the socket and read out.println(message); String returnStr = in .readLine(); return returnStr; } catch (IOException e) { e.printStackTrace(); } return null; } // get the socket instance private Socket getSocket() { return socket; } } 

它显示我在服务器端的错误:

  client connected events.js:141 throw er; // Unhandled 'error' event ^ Error: read ECONNRESET at exports._errnoException (util.js:870:11) at TCP.onread (net.js:550:26) Done. 

您没有closures客户端的套接字 – 导致连接重置。

 // In echo() in.close(); out.close(); // In main() getSocket().close();