From bb793d71e7bb47e8a036dba4d07b132cecc24c81 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 18 二月 2022 14:05:32 +0800
Subject: [PATCH] fix 修复 minio 适配 https 导致的问题

---
 ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/AliyunOssStrategy.java |   21 ++++++++++++++-------
 1 files changed, 14 insertions(+), 7 deletions(-)

diff --git a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/AliyunOssStrategy.java b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/AliyunOssStrategy.java
index 99efb8d..62c2922 100644
--- a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/AliyunOssStrategy.java
+++ b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/AliyunOssStrategy.java
@@ -3,16 +3,19 @@
 import com.aliyun.oss.ClientConfiguration;
 import com.aliyun.oss.OSSClient;
 import com.aliyun.oss.common.auth.DefaultCredentialProvider;
+import com.aliyun.oss.common.comm.Protocol;
 import com.aliyun.oss.model.CannedAccessControlList;
 import com.aliyun.oss.model.CreateBucketRequest;
 import com.aliyun.oss.model.ObjectMetadata;
 import com.aliyun.oss.model.PutObjectRequest;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.oss.constant.OssConstant;
 import com.ruoyi.oss.entity.UploadResult;
 import com.ruoyi.oss.enumd.OssEnumd;
 import com.ruoyi.oss.exception.OssException;
 import com.ruoyi.oss.properties.OssProperties;
 import com.ruoyi.oss.service.abstractd.AbstractOssStrategy;
+import org.springframework.stereotype.Component;
 
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
@@ -22,15 +25,19 @@
  *
  * @author Lion Li
  */
+@Component
 public class AliyunOssStrategy extends AbstractOssStrategy {
 
     private OSSClient client;
 
     @Override
-    public void init(OssProperties cloudStorageProperties) {
-        properties = cloudStorageProperties;
+    public void init(OssProperties ossProperties) {
+        super.init(ossProperties);
         try {
             ClientConfiguration configuration = new ClientConfiguration();
+            if (OssConstant.IS_HTTPS.equals(ossProperties.getIsHttps())) {
+                configuration.setProtocol(Protocol.HTTPS);
+            }
             DefaultCredentialProvider credentialProvider = new DefaultCredentialProvider(
                 properties.getAccessKey(), properties.getSecretKey());
             client = new OSSClient(properties.getEndpoint(), credentialProvider, configuration);
@@ -38,6 +45,7 @@
         } catch (Exception e) {
             throw new OssException("闃块噷浜戝瓨鍌ㄩ厤缃敊璇�! 璇锋鏌ョ郴缁熼厤缃�:[" + e.getMessage() + "]");
         }
+        isInit = true;
     }
 
     @Override
@@ -56,8 +64,8 @@
     }
 
     @Override
-    public String getServiceType() {
-        return OssEnumd.ALIYUN.getValue();
+    public OssEnumd getServiceType() {
+        return OssEnumd.ALIYUN;
     }
 
     @Override
@@ -74,12 +82,11 @@
         } catch (Exception e) {
             throw new OssException("涓婁紶鏂囦欢澶辫触锛岃妫�鏌ラ樋閲屼簯閰嶇疆淇℃伅:[" + e.getMessage() + "]");
         }
-        return new UploadResult().setUrl(getEndpointLink() + "/" + path).setFilename(path);
-    }
+        return UploadResult.builder().url(getEndpointLink() + "/" + path).filename(path).build();    }
 
     @Override
     public void delete(String path) {
-        path = path.replace(getEndpointLink() + "/" , "");
+        path = path.replace(getEndpointLink() + "/", "");
         try {
             client.deleteObject(properties.getBucketName(), path);
         } catch (Exception e) {

--
Gitblit v1.9.3