gpt4 book ai didi

java - 使用 Java 将客户端连接到本地主机时出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 15:23:48 26 4
gpt4 key购买 nike

我正在尝试使用套接字设置 protected 客户端和 protected 服务器连接。每当我运行该程序时,我都会收到一条连接错误,指出连接被拒绝。我在 MAC OS 上运行的 Eclipse IDE 中使用 Java。任何想法为什么此代码无法连接到我的本地主机?

protected 客户端:

public static void main(String[] args) throws Exception 
{
String host = "localhost";
int port = 7999;
String user = "George";
String password = "abc123";
Socket s = new Socket(host, port);

ProtectedClient client = new ProtectedClient();
client.sendAuthentication(user, password, s.getOutputStream());

s.close();
}

protected 服务器

public static void main(String[] args) throws Exception 
{
int port = 7999; //7999
ServerSocket s = new ServerSocket(port);
Socket client = s.accept();

ProtectedServer server = new ProtectedServer();

if (server.authenticate(client.getInputStream()))
System.out.println("Client logged in.");
else
System.out.println("Client failed to log in.");

s.close();
}

当我运行该程序时,我收到以下错误:

Exception in thread "main" java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:382)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:241)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:228)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:431)
at java.net.Socket.connect(Socket.java:527)
at java.net.Socket.connect(Socket.java:476)
at java.net.Socket.<init>(Socket.java:373)
at java.net.Socket.<init>(Socket.java:216)
at ProtectedClient.main(ProtectedClient.java:36)

最佳答案

我之前在使用特定套接字时遇到过此错误。尝试使用不同的套接字,例如 5687。(或者,如果您需要该特定套接字,请尝试确保您的防火墙允许它)。

确保您也在服务器上调用 client.close()。 如果您的程序曾经运行过,则可能会阻塞该端口。

关于java - 使用 Java 将客户端连接到本地主机时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20081121/

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