From 22fd00832df867b2927d6fe67cdab5316096ebc4 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期五, 23 七月 2021 15:35:28 +0800 Subject: [PATCH] update 更新OSS模块 七牛云相关代码 --- ruoyi-oss/src/main/java/com/ruoyi/oss/properties/CloudStorageProperties.java | 12 +++++++++++- ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/QiniuCloudStorageServiceImpl.java | 31 +++++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/ruoyi-oss/src/main/java/com/ruoyi/oss/properties/CloudStorageProperties.java b/ruoyi-oss/src/main/java/com/ruoyi/oss/properties/CloudStorageProperties.java index 50053e8..4a86331 100644 --- a/ruoyi-oss/src/main/java/com/ruoyi/oss/properties/CloudStorageProperties.java +++ b/ruoyi-oss/src/main/java/com/ruoyi/oss/properties/CloudStorageProperties.java @@ -143,7 +143,7 @@ */ @Data @NoArgsConstructor - public class QiniuProperties { + public static class QiniuProperties { /** * 涓冪墰缁戝畾鐨勫煙鍚� @@ -170,6 +170,16 @@ */ private String bucketName; + /** + * 涓冪墰瀛樺偍鍖哄煙 + */ + private String region; + + /** + * 涓冪墰瀛樺偍鍖哄煙 + */ + private Boolean isHttps; + } } diff --git a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/QiniuCloudStorageServiceImpl.java b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/QiniuCloudStorageServiceImpl.java index 0b699ab..944dd23 100644 --- a/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/QiniuCloudStorageServiceImpl.java +++ b/ruoyi-oss/src/main/java/com/ruoyi/oss/service/impl/QiniuCloudStorageServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.oss.service.impl; +import cn.hutool.core.util.ArrayUtil; import com.qiniu.http.Response; import com.qiniu.storage.BucketManager; import com.qiniu.storage.Configuration; @@ -38,21 +39,26 @@ public QiniuCloudStorageServiceImpl(CloudStorageProperties properties) { this.properties = properties.getQiniu(); try { - // z0 z1 z2 - Configuration config = new Configuration(Region.autoRegion()); - // 榛樿涓嶄娇鐢╤ttps + Configuration config = new Configuration(getRegion(this.properties.getRegion())); + // https璁剧疆 config.useHttpsDomains = false; + if (this.properties.getIsHttps() != null) { + config.useHttpsDomains = this.properties.getIsHttps(); + } uploadManager = new UploadManager(config); Auth auth = Auth.create( this.properties.getAccessKey(), this.properties.getSecretKey()); token = auth.uploadToken(this.properties.getBucketName()); bucketManager = new BucketManager(auth, config); + + if (!ArrayUtil.contains(bucketManager.buckets(), this.properties.getBucketName())) { + bucketManager.createBucket(this.properties.getBucketName(), this.properties.getRegion()); + } } catch (Exception e) { throw new IllegalArgumentException("涓冪墰浜戝瓨鍌ㄩ厤缃敊璇�! 璇锋鏌ョ郴缁熼厤缃�!"); } } - @Override public String getServiceType() { @@ -100,4 +106,21 @@ OssFactory.register(getServiceType(),this); } + private Region getRegion(String region) { + switch (region) { + case "z0": + return Region.region0(); + case "z1": + return Region.region1(); + case "z2": + return Region.region2(); + case "na0": + return Region.regionNa0(); + case "as0": + return Region.regionAs0(); + default: + return Region.autoRegion(); + } + } + } -- Gitblit v1.9.3