如何使用REST或SOAP更改AmazonS3对象的密钥/名称



如何使用REST或SOAP更改AmazonS3对象的key/name

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

这里详细介绍了您需要的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操作的此实现创建对象的副本已经存储在AmazonS3中。PUT复制操作是相同的如执行GET然后执行PUT。添加请求报头,x-amz-copy-source,使PUT操作将源对象复制到目的地存储桶。

但是,请记住现有的ACL:

复制对象时,可以保留大部分元数据(默认)或指定新的元数据。但是,ACL未被保留并且对于做出请求的用户被设置为私有。

最新更新