设置对象标签
功能介绍
用户可以通过本接口设置或更新对象(Object)的标签信息。对象标签使用一组键值对(Key-Value)标记对象。
如果请求中不携带版本号(versionId),需要确保执行者有PutObjectTagging权限。如果请求中携带版本号(versionId),需要确保执行者有PutObjectTagging+PutObjectVersionTagging权限。缺省情况下只有对象的所有者可以执行此操作,也可以通过设置桶策略或用户策略给其他用户。
默认设置Object当前版本的标签信息。可以通过指定versionId参数来设置指定Object版本的标签信息。如果对应版本为删除标记(Delete Marker),则OBS将返回404 Not Found。
请求消息样式
PUT /objectname?tagging&versionId=versionid HTTP/1.1 Host: bucketname.obs.cn-north-4.myhuaweicloud.com Date: date Authorization: authorization string Content-MD5: md5 <?xml version="1.0" encoding="UTF-8"> <Tagging> <TagSet> <Tag> <Key>Key</Key> <Value>Value</Value> </Tag> </TagSet> </Tagging>
请求消息参数
该请求使用的消息参数如下表1 请求消息参数所示。
请求消息头
该请求使用的消息头如下表2 请求消息头所示。
请求消息元素
在此请求中,需要在请求的消息体中配置对象的标签。标签的配置信息以XML格式上传。具体的配置元素如下表3 对象的标签配置元素所示。
响应消息样式
1 2 3 4 5 |
HTTP/1.1 status_code x-obs-request-id: request id x-obs-id-2: id Content-Length: length Date: date |
响应消息头
该请求的响应消息使用公共消息头,具体请参考3.3-表 公共响应消息头。
响应消息元素
该请求的响应消息中不带有响应元素。
错误响应消息
除了公共的错误码外,此接口还会返回一些其他的错误码。下表中列出本接口的一些常见错误,以及可能原因。如下表4 配置对象标签错误码列表。
请求示例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
PUT /objectname?tagging&versionId=G001018455096CE600005306000000DD HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.cn-north-4.myhuaweicloud.com Accept: */* Date: Wed, 27 Jun 2018 13:22:50 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:Pf1ZyGvVYg2BzOjokZ/BAeR1mEQ= Content-MD5: MnAEvkfQIGnBpchOE2U6Og== Content-Length: 182 <Tagging xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/"> <TagSet> <Tag> <Key>TagName1</Key> <Value>TageSetVaule1</Value> </Tag> </TagSet> </Tagging> |
响应示例
1 2 3 4 5 |
HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF26000001643FEBA09B1ED46932CD07 x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSEZp87iEirC6DggPB5cN49pSvHBWClg Date: Wed, 27 Jun 2018 13:22:50 GMT |