java.net.ConnectException : errno: 110 (Connection timed out)

标签 java

我正在尝试连接客户端服务器,在打开连接时遇到下面提到的错误:

java.net.ConnectException: errno: 110 (Connection timed out), error: 
Connection timed out (local port XXXXX to address 0:0:0:0:0:0:0:0, remote 
port XXXX to address XXX.XXX.XXX.XX)

代码片段:

URL url = new URL("http://XXX.XXX.XXX.XX:XXXX/services/ServiceEngine");

HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.setRequestProperty("Content-Type", "application/json");

OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream());
writer.write(json);
writer.close();
BufferedReader br = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = br.readLine()) != null) {
  jsonString.append(line);
}
br.close();
connection.disconnect();

最佳答案

当服务器未能在预定时间段内响应时,就会发生连接超时,并且与代码中的逻辑没有太大关系。

您可以使用 HttpURLConnection.setConnectTimeout() 更改此时间段,如下所示:

connection.setConnectTimeout(10000); //Time is set in milliseconds, so 1000 is 1 second. 

另外,正如另一位用户指出的那样,您的服务器可能实际上尚未启动并准备好托管连接。

关于java.net.ConnectException : errno: 110 (Connection timed out),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51943177/

相关文章:

java - 字符串操作 - 从字符串中删除字符

java - Amazon Marketplace 应用程序因包含 Eclipse 设置文件而被拒绝

java.lang.NumberFormatException : For input string: "0.000"

java - JLabel 数组与 Graphics2D 绘画

java - HTTP 状态 404 请求的资源不可用

java - 应用 Maven groupId 命名约定

java - Sharedpreferences错误索引越界

java - 竞赛编程算法思维提升

java - 使用 snakeyaml 库在 Java 中将对象序列化为 YAML

java - 如何将列名添加到我的 java 表中? (来自数据库)