相关文章推荐
老实的烈酒  ·  使用Node.js ...·  3 月前    · 
温暖的洋葱  ·  文件分享链接生成配置指南-对象存储-阿里云·  3 周前    · 
痴情的斑马  ·  使用预签名URL上传文件-对象存储(OSS) ...·  3 周前    · 
玩命的葫芦  ·  在客户端直接上传文件到OSS-对象存储(OS ...·  3 周前    · 
不敢表白的铁链  ·  类型-元素隐式具有'any‘类型,因为类型' ...·  2 年前    · 
文质彬彬的红豆  ·  错误:任务':app:preDebugAnd ...·  2 年前    · 
成熟的皮蛋  ·  typescript - Nest.js ...·  3 年前    · 
很酷的登山鞋  ·  利用VBA创建ACCESS数据库并导入CSV ...·  3 年前    · 
有胆有识的楼房  ·  花了72小时梳理,终于把什么是云原生讲的明明 ...·  3 年前    · 
Code  ›  调用PutObjectTagging接口设置或更新对象的标签信息_对象存储(OSS)-阿里云帮助中心
版本控制 信息存储 object 对象存储
https://help.aliyun.com/zh/oss/developer-reference/putobjecttagging
风度翩翩的排球
10 月前
大模型 产品 解决方案 文档与社区 权益中心 定价 云市场 合作伙伴 支持与服务 了解阿里云 HOT
AI 助理
备案 控制台
官方文档
输入文档关键字查找
PutObjectTagging

PutObjectTagging

更新时间:
产品详情
我的收藏

调用 PutObjectTagging 接口设置或更新对象(Object)的标签(Tagging)信息。对象标签使用一组键值对(Key-Value)标记对象。

注意事项

  • 单个 Object 最多能设置 10 个标签,Key 不能重复。

  • 每个 Key 长度不能超过 128 字符,每个 Value 长度不能超过 256 字符。

  • Key 和 Value 区分大小写。

  • 标签的合法字符集包括大小写字母、数字、空格和以下符号:

    +‑=._:/

    通过 HTTP Header 的方式设置标签且标签中包含任意字符时,您需要对标签的 Key 和 Value 进行 URL 编码。

  • 更改标签信息不会更新 Object 的 Last‑Modified 时间。

关于对象标签的更多信息,请参见 对象标签 。

版本控制

调用 PutObjectTagging 接口时,默认设置 Object 当前版本的标签信息。您可以通过指定 versionId 参数来设置指定 Object 版本的标签信息。如果 Object 的对应版本为删除标记(Delete Marker),则 OSS 将返回 404 Not Found。

权限说明

阿里云账号默认拥有全部权限。阿里云账号下的 RAM 用户或 RAM 角色默认没有任何权限,需要阿里云账号或账号管理员通过 RAM Policy 或 Bucket Policy 授予操作权限。

API

Action

说明

PutObjectTagging

oss:PutObjectTagging

设置或更新 Object 的标签(Tagging)信息。

oss:PutObjectVersionTagging

设置或更新指定版本 Object 的标签(Tagging)信息。

请求语法

PUT /objectname?tagging
Content‐Length: 114
Host: BucketName.oss-cn-hangzhou.aliyuncs.com
Date: Mon, 18 Mar 2019 08:25:17 GMT
Authorization: SignatureValue
<Tagging>
  <TagSet>
      <Key>Key</Key>
      <Value>Value</Value>
  </TagSet>
</Tagging>            

当您在 OSS ON 云盒中调用该接口时,您需要将 Host 替换为云盒 Endpoint。更多信息,请参见 云盒 Endpoint 。

请求元素

名称

类型

是否必选

示例值

描述

Tagging

容器

是

不涉及

标签集合。

子节点:TagSet

TagSet

容器

是

不涉及

标签集合。

父节点:Tagging

子节点:Tag

Tag

容器

否

不涉及

标签集合。

父节点:TagSet

子节点:Key、Value

Key

字符串

否

a

标签键。

父节点:Tag

子节点:无

Value

字符串

否

1

标签值。

父节点:Tag

子节点:无

此接口还涉及其他公共请求头。更多信息,请参见 公共请求头(Common Request Headers) 。

示例

  • 未开启版本控制

    在未开启版本控制情况下,针对存储空间 bucketname 中的对象 objectname,通过 PUT 请求设置{a:1}和{b:2}两个标签。标签设置成功后返回 200 (OK)。

    请求示例

    PUT /objectname?tagging
    Content‐Length: 114
    Host: BucketName.oss-cn-hangzhou.aliyuncs.com
    Date: Mon, 18 Mar 2019 08:25:17 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    <Tagging>
      <TagSet>
          <Key>a</Key>
          <Value>1</Value>
          <Key>b</Key>
          <Value>2</Value>
      </TagSet>
    </Tagging>

    返回示例

    200 (OK)
    content‐length: 0
    server: AliyunOSS
    connection: keep-alive
    x‐oss‐request‐id: 5C8F55ED461FB4A64C00****
    date: Mon, 18 Mar 2019 08:25:17 GMT
  • 已启用版本控制

    在启用了版本控制的情况下,针对存储空间 bucketname 中的对象 objectname 的指定版本(即请求示例中的 versionId),通过 PUT 请求设置{age:18}标签。标签设置成功后返回 200 (OK)。

    请求示例

    PUT /objectname?tagging&versionId=CAEQExiBgID.jImWlxciIDQ2ZjgwODIyNDk5MTRhNzBiYmQwYTZkMTYzZjM0****
    Content-Length: 90
    Host: BucketName.oss-cn-hangzhou.aliyuncs.com
    Date: Wed, 24 Jun 2020 08:58:15 GMT
    Authorization: OSS4-HMAC-SHA256 Credential=LTAI********************/20250417/cn-hangzhou/oss/aliyun_v4_request,AdditionalHeaders=content-length,Signature=a7c3554c729d71929e0b84489addee6b2e8d5cb48595adfc51868c299c0c218e
    <Tagging>
      <TagSet>
          <Key>age</Key>
          <Value>18</Value>
      </TagSet>
    </Tagging>

    返回示例

    200 (OK)
    content-length: 0
    server: AliyunOSS
    connection: keep-alive
    x-oss-request-id: 5EF315A7FBD3EC3232B4****
    date: Wed, 24 Jun 2020 08:58:15 GMT
    x-oss-version-id: CAEQExiBgID.jImWlxciIDQ2ZjgwODIyNDk5MTRhNzBiYmQwYTZkMTYzZjM0****

SDK

PutObjectTagging 接口对应的各语言 SDK 示例如下:

  • Java

  • Python V2

  • Go V2

  • PHP V2

  • C++

  • .NET

  • Node.js

  • iOS

  • Android

命令行工具 ossutil

PutObjectTagging 接口所对应的 ossutil 命令,请参见 put-object-tagging 。

上一篇:标签(Tagging) 下一篇:GetObjectTagging
该文章对您有帮助吗?
 
推荐文章
老实的烈酒  ·  使用Node.js SDK删除单个与批量对象-对象存储-阿里云
3 月前
温暖的洋葱  ·  文件分享链接生成配置指南-对象存储-阿里云
3 周前
痴情的斑马  ·  使用预签名URL上传文件-对象存储(OSS)-阿里云帮助中心
3 周前
玩命的葫芦  ·  在客户端直接上传文件到OSS-对象存储(OSS)-阿里云帮助中心
3 周前
不敢表白的铁链  ·  类型-元素隐式具有'any‘类型,因为类型'any’不能用于索引类型‘type of EnumUrl’..ts(7053)-腾讯云开发者社区-腾讯云
2 年前
文质彬彬的红豆  ·  错误:任务':app:preDebugAndroidTestBuild'的执行失败,当试图在android studio中运行java程序时。
2 年前
成熟的皮蛋  ·  typescript - Nest.js validate array of strings if there are defined strings only - Stack Overflow
3 年前
很酷的登山鞋  ·  利用VBA创建ACCESS数据库并导入CSV数据_accdb 宏将本文件下的所有csv倒入到数据库中_qq_44390640的博客-CSDN博客
3 年前
有胆有识的楼房  ·  花了72小时梳理,终于把什么是云原生讲的明明白白了 - 腾讯云开发者社区-腾讯云
3 年前
今天看啥   ·   Py中国   ·   codingpro   ·   小百科   ·   link之家   ·   卧龙AI搜索
删除内容请联系邮箱 2879853325@qq.com
Code - 代码工具平台
© 2024 ~ 沪ICP备11025650号