gpt4 book ai didi

java - Nodejs 和 Java 之间的连接。当 java 客户端连接到 nodejs 服务器时,它显示错误,

转载 作者:行者123 更新时间:2023-11-30 10:45:16 25 4
gpt4 key购买 nike

我在 node.js 上有一个服务器,在 Java 上有一个客户端。当 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.

最佳答案

您没有在客户端关闭套接字 - 导致连接重置。

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

// In main()
getSocket().close();

关于java - Nodejs 和 Java 之间的连接。当 java 客户端连接到 nodejs 服务器时,它显示错误,,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37099854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com