如何使用REST或SOAP更改Amazon S3对象的键/名称?

3

我该如何使用REST或SOAP更改Amazon S3对象的键/名称

1个回答

3

更改一个对象的唯一方法是将旧对象复制到新对象中,并在新副本上设置新名称。

您需要的REST调用详见这里

语法

PUT /destinationObject HTTP/1.1
Host: destinationBucket.s3.amazonaws.com
x-amz-copy-source: /source_bucket/sourceObject
x-amz-metadata-directive: metadata_directive
x-amz-copy-source-if-match: etag
x-amz-copy-source-if-none-match: etag
x-amz-copy-source-if-unmodified-since: time_stamp
x-amz-copy-source-if-modified-since: time_stamp
<request metadata>
Authorization: signatureValue
Date: date

这种PUT操作的实现是创建一个已存储在Amazon S3中的对象的副本。PUT复制操作与执行GET然后PUT相同。添加请求标头x-amz-copy-source将使PUT操作将源对象复制到目标存储桶中。 请记住现有ACL: 复制对象时,您可以保留大多数元数据(默认)或指定新的元数据。但是,ACL不会被保留并设置为对于进行请求的用户私有。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接