























5 楼的代码有点问题,参数不能拼接在 path 后面,而是
appendRawQueryParameter("name","value")
下面具体代码
使用的 sdk 是
```
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>s3</artifactId>
</dependency>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>bom</artifactId>
<version>2.9.9</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
```
###############
Aws4PresignerParams params = Aws4PresignerParams.builder()
// .expirationTime(storageTemplate.processExpires(expires))
.awsCredentials(storageTemplate.getCredentials())
.signingName("s3")
.expirationTime(Instant.now().plusSeconds(storageTemplate.getExpiresOrDefault(expires)))
.signingRegion(Region.of(storageTemplate.processRegion(region)))
.build();
SdkHttpFullRequest request = SdkHttpFullRequest.builder()
.encodedPath(storageTemplate.processPath(bucketName, key))
.host(storageTemplate.getHost())
.appendRawQueryParameter("uploadId", uploadId)
.appendRawQueryParameter("partNumber", String.valueOf(partNumber))
.method(SdkHttpMethod.PUT)
.protocol(storageTemplate.getProtocol())
.build();
return AwsS3V4Signer.create().presign(request, params).getUri().toString();
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。