gpt4 book ai didi

客户端服务器应用程序中的 Java 连接被拒绝

转载 作者:行者123 更新时间:2023-12-01 15:42:12 26 4
gpt4 key购买 nike

我正在用java构建一个客户端服务器应用程序,这是我的代码

客户端

import java.net.*;
import java.io.*;

class ClientCode{
public static void main(String args[]) throws Exception {
int character;
Socket socket = new Socket("112.134.214.53", 8765);
//i have put my public ip instead of 127.0.0.1 in order to test it is working through the internet or not
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
String string = "Hello!\n";
byte buffer[] = string.getBytes();
out.write(buffer);
while ((character = in.read()) != -1){
System.out.print((char) character);
}
socket.close();
}
}

服务器

import java.io.*;
import java.net.*;
public class ServerCode{
public static void main(String[] args ){
try{
ServerSocket socket = new ServerSocket(8765);
Socket insocket = socket.accept( );
BufferedReader in = new BufferedReader (new InputStreamReader(insocket.getInputStream()));
PrintWriter out = new PrintWriter(insocket.getOutputStream(), true);
String instring = in.readLine();
out.println("The server got this: " + instring);
insocket.close();
}
catch (Exception e) {}
}
}

两者都在使用我的家用 adsl 单端口路由器连接到互联网的同一台计算机上运行。

服务器应用程序运行正常,但是当我的客户端通过公共(public) IP 连接到服务器时,问题开始出现,以下是错误消息

Exception in thread "main" java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at ClientCode.main(ClientCode.java:6)

我的卡巴斯基网络监视器显示我的端口 8765 正常并且正在工作

最佳答案

发生此异常可能有两个原因:

1- 没有服务监听您尝试连接的端口。为了调试,您可以尝试加载 http://112.134.214.53:8765使用浏览器查看是否与服务器连接。

2-(如果其他一切正常)这很可能是防火墙问题。

关于客户端服务器应用程序中的 Java 连接被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7872115/

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