From acc41511e080dcf573475f9f04b598c36e10be95 Mon Sep 17 00:00:00 2001 From: zhaojun1998 Date: Thu, 30 Jan 2020 16:51:05 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20S3=20=E5=8D=8F=E8=AE=AE=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E6=98=AF=E5=90=A6=E4=B8=BA=E7=A7=81=E6=9C=89=E7=A9=BA?= =?UTF-8?q?=E9=97=B4=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../im/zhaojun/common/service/AbstractS3FileService.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/im/zhaojun/common/service/AbstractS3FileService.java b/src/main/java/im/zhaojun/common/service/AbstractS3FileService.java index 604e328..683f260 100644 --- a/src/main/java/im/zhaojun/common/service/AbstractS3FileService.java +++ b/src/main/java/im/zhaojun/common/service/AbstractS3FileService.java @@ -1,5 +1,6 @@ package im.zhaojun.common.service; +import cn.hutool.core.util.BooleanUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.URLUtil; import com.amazonaws.services.s3.AmazonS3; @@ -20,7 +21,6 @@ import java.util.Objects; /** * @author zhaojun - * @date 2019/12/26 22:26 */ public abstract class AbstractS3FileService extends AbstractFileService { @@ -37,6 +37,8 @@ public abstract class AbstractS3FileService extends AbstractFileService { protected AmazonS3 s3Client; + protected boolean isPrivate; + @Override public List fileList(String path) { this.path = path; @@ -95,6 +97,11 @@ public abstract class AbstractS3FileService extends AbstractFileService { public String s3ObjectUrl(String path) { String fullPath = StringUtils.removeFirstSeparator(StringUtils.removeDuplicateSeparator(basePath + "/" + path)); + // 如果不是私有空间, 且指定了加速域名, 则直接返回下载地址. + if (BooleanUtil.isFalse(isPrivate) && StringUtils.isNotNullOrEmpty(domain)) { + return StringUtils.concatPath(domain, fullPath); + } + Date expirationDate = new Date(System.currentTimeMillis() + timeout * 1000); URL url = s3Client.generatePresignedUrl(bucketName, fullPath, expirationDate);