From 21e13c377901e8379ccfb083f73ea0cd05af8bc7 Mon Sep 17 00:00:00 2001 From: duandazhi Date: Tue, 26 Apr 2022 10:25:46 +0800 Subject: [PATCH] =?UTF-8?q?aliyun=20oss=20=E5=A2=9E=E5=8A=A0=EF=BC=9A?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=86=85=E7=BD=91=E6=8E=A5=E5=8F=A3=E8=BF=98?= =?UTF-8?q?=E6=98=AF=E5=A4=96=E7=BD=91=E6=8E=A5=E5=8F=A3=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/file/config/AliyunOssConfig.java | 14 ++++++++++++++ .../file/service/AliyunOssDsfServiceImpl.java | 5 +++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java index b9dbd557..9dca172e 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/config/AliyunOssConfig.java @@ -60,6 +60,12 @@ public class AliyunOssConfig { * 3、公共读写 */ private Long expiryDuration = 32400L; + /** + * 使用内网,还是外网 + * true: 内网,必须是aliyun公网服务器 + * false: 外网 + */ + private Boolean internal = false; public String getAccessKey() { return accessKey; @@ -117,4 +123,12 @@ public class AliyunOssConfig { public void setExpiryDuration(Long expiryDuration) { this.expiryDuration = expiryDuration; } + + public Boolean getInternal() { + return internal; + } + + public void setInternal(Boolean internal) { + this.internal = internal; + } } diff --git a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/AliyunOssDsfServiceImpl.java b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/AliyunOssDsfServiceImpl.java index 132dfaac..d55bcdc5 100644 --- a/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/AliyunOssDsfServiceImpl.java +++ b/ruoyi-modules/ruoyi-file/src/main/java/com/ruoyi/file/service/AliyunOssDsfServiceImpl.java @@ -72,6 +72,7 @@ public class AliyunOssDsfServiceImpl implements ISysFileService { String requestKey = "upload/" + StringUtils.defaultString(modules, "default") + "/" + newName; //这里增加一个前缀区分一下是测试环境还是正式环境 boolean isProd = "prod".equalsIgnoreCase(SpringUtil.getActiveProfile()); + boolean isInternalNetwork = aliyunOssConfig.getInternal(); if (!isProd) { requestKey = SpringUtil.getActiveProfile() + "/" + requestKey; } @@ -88,10 +89,10 @@ public class AliyunOssDsfServiceImpl implements ISysFileService { long mb5 = 5 * 1024 * 1024L; if (file.getSize() > mb5) { //大于5mb,我们就分片上传 - this.ossUploadFileBigMultiable(isProd ? endpointInternal : endpoint, requestKey, file); + this.ossUploadFileBigMultiable(isInternalNetwork ? endpointInternal : endpoint, requestKey, file); } else { //否则,我们常规上传 - this.ossUploadFileSmall(isProd ? endpointInternal : endpoint, requestKey, file); + this.ossUploadFileSmall(isInternalNetwork ? endpointInternal : endpoint, requestKey, file); } // 解析结果