Put Bucket Versioning
功能描述
Put Bucket Versioning实现启用或者暂停版本控制功能。
该PUT操作的这种实现使用 versioning子资源来设置现有存储桶的版本控制状态。要设置版本控制状态,您必须是存储桶所有者。
您可以使用以下值之一设置版本控制状态:
1.Enabled-
启用版本在桶中的对象
添加到存储桶的所有对象都会收到唯一的版本ID。
2.Suspended -
禁用存储桶中对象的版本控制
添加到存储桶的所有对象都会收到版本号null。
重要
如果您的非版本桶中有对象到期生命周期策略,并且您希望在启用版本控制时保持相同的永久删除行为,则必须添加非当前过期策略。
非当前过期生命周期策略将管理启用版本的桶中的非当前对象版本的删除。
了解生命周期详细请参见 生命周期 章节。
请求
语法示例:
PUT /?versioning HTTP 1.1
Host:<Bucketname>-<APPID>.<Region>.myqcloud.com
Date:date
Authorization: Auth
Authorization: Auth String (详细参见 请求签名 章节)
请求行
PUT /destinationObject HTTP 1.1
该 API 接口接受 PUT请求。
请求头
公共头部
该请求操作的实现使用公共请求头,了解公共请求头详细请参见 公共请求头部 章节。
非公共头部
该请求操作无特殊的请求头部信息。
请求体
<VersioningConfiguration>
<Status>Enabled</Status>
</VersioningConfiguration>
具体的数据内容如下:
节点名称(关键字) | 父节点 | 描述 | 类型 |
---|---|---|---|
VersioningConfiguration | 无 | 说明版本控制的具体信息 | Container |
Status | VersioningConfiguration | 说明版本是否开启,枚举值:Suspended|Enabled | Enum |
响应
响应头
公共响应头
该响应使用公共响应头,了解公共响应头详细请参见 公共响应头部 章节。
特有响应头
该响应无特殊的响应头。
响应体
该响应体返回为空。
实际案例
PUT /?versioning HTTP/1.1
Host: testbucket-1322448703.cn-north.myqcloud.com
Connection: keep-alive
Accept-Encoding: gzip, deflate
Accept: */*
User-Agent: python-requests/2.12.4
Content-Type: application/xml
Authorization: q-sign-algorithm=sha1&q-ak=AKID15IsskiBQKTZbAo6WhgcBqVls9SmuG00&q-sign-time=1480932292;1981012292&q-key-time=1480932292;1981012292&q-url-param-list=versioning&q-header-list=host&q-signature=47ec2b80c73788ecd394d3b9ad90e120a32f9779
Content-Length: 83
<VersioningConfiguration>
<Status>Enabled</Status>
</VersioningConfiguration>
响应
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 0
Connection: keep-alive
Date: Wed, 23 Aug 2017 08:14:53 GMT
Server: tencent-cos
x-cos-request-id: NTk5ZDM5N2RfMjNiMjM1MGFfMmRiX2Y0ZThm
网友评论