From a9d0130c35cb4e2d2f8fa75c8a6ddfb8481dfa78 Mon Sep 17 00:00:00 2001 From: dftre <3066417822@qq.com> Date: Sun, 29 Sep 2024 14:39:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=BD=91=E7=BB=9C=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=92=8C=E6=96=87=E4=BB=B6=E6=9C=8D=E5=8A=A1=E7=9A=84?= =?UTF-8?q?URL=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 统一网络请求和文件服务中的URL处理方式,使用URI转URL的方法确保URL正确构建。优化了HttpClientUtil、HttpUtils和ImageUtils等类中URL的创建方式,通过URI处理避免潜在的格式错误。在MinioFileService中移除了未使用的Md5Utils依赖。 --- .../java/com/ruoyi/common/utils/file/ImageUtils.java | 4 +++- .../com/ruoyi/common/utils/http/HttpClientUtil.java | 3 +-- .../java/com/ruoyi/common/utils/http/HttpUtils.java | 10 +++++++--- .../middleware/minio/service/MinioFileService.java | 1 - 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java index 0ef3317..7406463 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/ImageUtils.java @@ -10,6 +10,7 @@ import org.slf4j.LoggerFactory; import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.InputStream; +import java.net.URI; import java.net.URL; import java.net.URLConnection; import java.util.Arrays; @@ -70,7 +71,8 @@ public class ImageUtils if (url.startsWith("http")) { // 网络地址 - URL urlObj = new URL(url); + URI uriObj = new URI(url); + URL urlObj = uriObj.toURL(); URLConnection urlConnection = urlObj.openConnection(); urlConnection.setConnectTimeout(30 * 1000); urlConnection.setReadTimeout(60 * 1000); diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpClientUtil.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpClientUtil.java index 954701f..04b4c23 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpClientUtil.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpClientUtil.java @@ -5,7 +5,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; -import java.net.URL; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -251,7 +250,7 @@ public class HttpClientUtil { try { // 创建默认的httpClient实例. PublicSuffixMatcher publicSuffixMatcher = PublicSuffixMatcherLoader - .load(new URL(httpGet.getURI().toString())); + .load(httpGet.getURI().toURL()); DefaultHostnameVerifier hostnameVerifier = new DefaultHostnameVerifier(publicSuffixMatcher); httpClient = HttpClients.custom().setSSLHostnameVerifier(hostnameVerifier).build(); httpGet.setConfig(requestConfig); diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java index 537fe1b..8c2d6eb 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/http/HttpUtils.java @@ -7,6 +7,7 @@ import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ConnectException; import java.net.SocketTimeoutException; +import java.net.URI; import java.net.URL; import java.net.URLConnection; import java.nio.charset.StandardCharsets; @@ -115,7 +116,8 @@ public class HttpUtils { String urlNameString = StringUtils.isNotBlank(param) ? url + "?" + param : url; log.info("sendGet - {}", urlNameString); - URL realUrl = new URL(urlNameString); + URI uri = new URI(urlNameString); + URL realUrl = uri.toURL(); URLConnection connection = realUrl.openConnection(); connection.setRequestProperty("accept", "*/*"); connection.setRequestProperty("connection", "Keep-Alive"); @@ -177,7 +179,8 @@ public class HttpUtils try { log.info("sendPost - {}", url); - URL realUrl = new URL(url); + URI uri = new URI(url); + URL realUrl = uri.toURL(); URLConnection conn = realUrl.openConnection(); conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); @@ -243,7 +246,8 @@ public class HttpUtils log.info("sendSSLPost - {}", urlNameString); SSLContext sc = SSLContext.getInstance("SSL"); sc.init(null, new TrustManager[] { new TrustAnyTrustManager() }, new java.security.SecureRandom()); - URL console = new URL(urlNameString); + URI uri = new URI(urlNameString); + URL console = uri.toURL(); HttpsURLConnection conn = (HttpsURLConnection) console.openConnection(); conn.setRequestProperty("accept", "*/*"); conn.setRequestProperty("connection", "Keep-Alive"); diff --git a/ruoyi-middleware/ruoyi-middleware-minio/src/main/java/com/ruoyi/middleware/minio/service/MinioFileService.java b/ruoyi-middleware/ruoyi-middleware-minio/src/main/java/com/ruoyi/middleware/minio/service/MinioFileService.java index b95c049..78e1cca 100644 --- a/ruoyi-middleware/ruoyi-middleware-minio/src/main/java/com/ruoyi/middleware/minio/service/MinioFileService.java +++ b/ruoyi-middleware/ruoyi-middleware-minio/src/main/java/com/ruoyi/middleware/minio/service/MinioFileService.java @@ -4,7 +4,6 @@ import java.io.File; import java.io.InputStream; import com.ruoyi.common.utils.file.FileOperateUtils; -import com.ruoyi.common.utils.sign.Md5Utils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; import org.springframework.stereotype.Component;