Java套接字连接被拒绝

时间:2015-01-25 17:50:28

标签: java sockets connection

我正在尝试运行" GreetingClient"以下代码中的代码: http://www.tutorialspoint.com/java/java_networking.htm

服务器名称设置为" localhost"使用这些参数,我可以在没有任何异常的情况下运行程序,但代码在到达in.readUTF()行时会旋转。

当端口更改为任何其他端口时,我会收到连接拒绝异常。

另一方面,当我创建一个简单的" ServerSocket"在端口80上接收请求的程序,我得到"已经在使用的地址"例外,80以外的任何端口都适用于" ServerSocket"代码。

我在本地安装了使用端口80的Red Hat企业Web服务器,但它已关闭,并且在这些程序运行时不会运行。

执行telnet会给我以下结果:

  1. telent localhost 80:拒绝连接
  2. telnet localhost 81(或80以外的任何其他端口):连接到localhost ...无法打开与主机的连接,在端口81上:连接失败
  3. 我已启用telnet客户端功能。

1 个答案:

答案 0 :(得分:0)

你正在做的事情没有意义。客户端和服务器一起使用。您无法将任意客户端连接到任意服务器。他们必须使用相同的协议,在这种情况下使用writeUTF()readUTF().

进行请求/回复

此代码仅在连接到同一链接中的相应服务器时有效。您无法将其连接到端口80,它是HTTP服务器,而不是GreetingServer,并期望它可以工作。它不是HTTP客户端,它是自己服务器的客户端。 telnet服务器也不会工作,连接到GreetingServer.

时也不会运行Telnet客户端

'拒绝连接'意味着没有任何内容正在监听IP:端口。

您需要在某个端口上运行GreetingServer,然后在客户端旁边运行。{/ p>

NB好奇的代码。服务器捕获永不抛出的SocketTimeoutException