3

在版本 1 SDK 中,发出复制请求很简单:

new CopyObjectRequest(sourceBucket, sourceKey, destinationBucket, destinationKey)

在版本 2 SDK 中,BuilderforCopyObjectRequest没有明确的方法来设置源与目标。有一种copySource(copySource)接受完整路径的方法,但没有明显的方法来设置目标存储桶或目标密钥或正常设置源存储桶和源密钥(无需构建完整路径并处理 URL 编码)。

他们的新 S3 示例简单地忽略了新副本的工作原理,并且他们的JavaDocCopyObjectRequest没有这方面的真实信息。

4

2 回答 2

2

他们在 Github 上有一个很好的例子:https ://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javav2/example_code/s3/src/main/java/com/example/s3/复制对象.java

于 2019-06-19T15:22:33.347 回答
1

它现在遵循构建器模式,因此请阅读CopyObjectRequest.Builder的文档以获取更多详细信息。

这是一个基本示例:

s3.copyObject(CopyObjectRequest.builder()
                                 .copySource(SOURCE_BUCKET_NAME + "/" + SOURCE_KEY)
                                 .destinationBucket(DESTINATION_BUCKET_NAME)
                                 .destinationKey(DESTINATION_KEY)
                                 .build());
于 2019-06-19T15:15:06.080 回答