【同步】BOOT 和 CLOUD 的功能

pull/206/head
YunaiV 2025-08-18 08:42:16 +08:00
parent 8e45cf5787
commit 816e1fbf9b
1 changed files with 5 additions and 10 deletions

View File

@ -105,8 +105,8 @@ public class S3FileClient extends AbstractFileClient<S3FileClientConfig> {
@Override
public String presignPutUrl(String path) {
return presigner.presignPutObject(PutObjectPresignRequest.builder()
.signatureDuration(EXPIRATION_DEFAULT)
.putObjectRequest(b -> b.bucket(config.getBucket()).key(path)).build())
.signatureDuration(EXPIRATION_DEFAULT)
.putObjectRequest(b -> b.bucket(config.getBucket()).key(path)).build())
.url().toString();
}
@ -126,15 +126,10 @@ public class S3FileClient extends AbstractFileClient<S3FileClientConfig> {
String finalPath = path;
Duration expiration = expirationSeconds != null ? Duration.ofSeconds(expirationSeconds) : EXPIRATION_DEFAULT;
URL signedUrl = presigner.presignGetObject(GetObjectPresignRequest.builder()
.signatureDuration(expiration)
.getObjectRequest(b -> b.bucket(config.getBucket()).key(finalPath)).build())
.signatureDuration(expiration)
.getObjectRequest(b -> b.bucket(config.getBucket()).key(finalPath)).build())
.url();
// 特殊:适配未使用 domain 返回的情况!!!
String signedUrlStr = signedUrl.toString();
if (!signedUrlStr.startsWith(config.getDomain())) {
signedUrlStr = signedUrlStr.replaceFirst(signedUrl.getProtocol() + "://" + signedUrl.getHost(), config.getDomain());
}
return signedUrlStr;
return signedUrl.toString();
}
/**