From f897e640fcbf390328ca0b8fa3f2ee8adf884716 Mon Sep 17 00:00:00 2001 From: heavyrian2012 Date: Mon, 3 Mar 2025 12:11:19 +0800 Subject: [PATCH] =?UTF-8?q?SDK=E6=B7=BB=E5=8A=A0=E8=B6=85=E6=97=B6?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wildfirechat/sdk/utilities/AdminHttpUtils.java | 13 +++++++++++++ .../sdk/utilities/ChannelHttpUtils.java | 10 ++++++++++ .../wildfirechat/sdk/utilities/RobotHttpUtils.java | 10 ++++++++++ 3 files changed, 33 insertions(+) diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/AdminHttpUtils.java b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/AdminHttpUtils.java index f3ed762e..fa6470f5 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/AdminHttpUtils.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/AdminHttpUtils.java @@ -38,11 +38,24 @@ public class AdminHttpUtils extends JsonUtils { private static CloseableHttpClient httpClient; public static void init(String url, String secret) { + init(url, secret, 15000); + } + + public static void init(String url, String secret, int timeout) { adminUrl = url.trim(); adminSecret = secret.trim(); PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(); cm.setValidateAfterInactivity(1000); + int connectTimeout = 5000; // 连接超时时间 + int connectionRequestTimeout = 3000; // 从连接池获取连接的超时时间 + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(connectTimeout) + .setSocketTimeout(timeout) + .setConnectionRequestTimeout(connectionRequestTimeout) + .build(); + httpClient = HttpClients.custom() + .setDefaultRequestConfig(requestConfig) .setConnectionManager(cm) .evictExpiredConnections() .evictIdleConnections(60L, TimeUnit.SECONDS) diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/ChannelHttpUtils.java b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/ChannelHttpUtils.java index b7307325..04801278 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/ChannelHttpUtils.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/ChannelHttpUtils.java @@ -8,6 +8,7 @@ import org.apache.commons.codec.digest.DigestUtils; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.HttpClient; +import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; @@ -40,7 +41,16 @@ public class ChannelHttpUtils extends JsonUtils { this.channelSecret = secret.trim(); PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(); cm.setValidateAfterInactivity(1000); + int connectTimeout = 5000; // 连接超时时间 + int socketTimeout = 15000; // 请求超时时间 + int connectionRequestTimeout = 3000; // 从连接池获取连接的超时时间 + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(connectTimeout) + .setSocketTimeout(socketTimeout) + .setConnectionRequestTimeout(connectionRequestTimeout) + .build(); httpClient = HttpClients.custom() + .setDefaultRequestConfig(requestConfig) .setConnectionManager(cm) .evictExpiredConnections() .evictIdleConnections(60L, TimeUnit.SECONDS) diff --git a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/RobotHttpUtils.java b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/RobotHttpUtils.java index 0db2fc98..cfecdb18 100644 --- a/sdk/src/main/java/cn/wildfirechat/sdk/utilities/RobotHttpUtils.java +++ b/sdk/src/main/java/cn/wildfirechat/sdk/utilities/RobotHttpUtils.java @@ -9,6 +9,7 @@ import org.apache.commons.codec.digest.DigestUtils; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.HttpClient; +import org.apache.http.client.config.RequestConfig; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.CloseableHttpClient; @@ -41,7 +42,16 @@ public class RobotHttpUtils extends JsonUtils { this.robotSecret = robotSecret.trim(); PoolingHttpClientConnectionManager cm = new PoolingHttpClientConnectionManager(); cm.setValidateAfterInactivity(1000); + int connectTimeout = 5000; // 连接超时时间 + int socketTimeout = 15000; // 请求超时时间 + int connectionRequestTimeout = 3000; // 从连接池获取连接的超时时间 + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(connectTimeout) + .setSocketTimeout(socketTimeout) + .setConnectionRequestTimeout(connectionRequestTimeout) + .build(); httpClient = HttpClients.custom() + .setDefaultRequestConfig(requestConfig) .setConnectionManager(cm) .evictExpiredConnections() .evictIdleConnections(60L, TimeUnit.SECONDS)