オブジェクトにタグを追加するか、オブジェクトに追加されたタグを更新します。 オブジェクトに追加された各タグは、キーと値のペアです。
使用上の注意
オブジェクトには最大10個のタグを追加できます。 オブジェクトに追加されるタグには、一意のタグキーが必要です。
タグキーの長さは最大128文字です。 タグ値の長さは最大256文字です。
タグキーとタグ値は大文字と小文字を区別します。
タグのキーと値には、英数字、スペース、および次の特殊文字を含めることができます。
+ - = . _ : /
HTTPヘッダーのタグに文字が含まれている場合は、タグのキーと値に対してURLエンコードを実行する必要があります。
オブジェクトのタグを変更しても、オブジェクトのLast-Modifiedパラメーターは更新されません。
オブジェクトタグの詳細については、「オブジェクトタグの設定」をご参照ください。
バージョン管理
既定では、PutObjectTaggingを呼び出してオブジェクトにタグを追加したり、オブジェクトに設定されたタグを更新したりすると、タグがオブジェクトの現在のバージョンに追加されるか、オブジェクトの現在のバージョンに設定されたタグが更新されます。 リクエストでversionIdパラメーターを指定して、指定したバージョンのオブジェクトにタグを追加したり、指定したバージョンのオブジェクトに設定されたタグを更新したりできます。 指定されたバージョンが削除マーカーの場合、OSSは404 Not Foundを返します。
リクエスト構文
PUT /objectname? タグ付け
コンテンツ-長さ: 114
ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com
日付: 3月18日月曜日2019 08:25:17 GMT
権限付与: SignatureValue
<タグ付け>
<TagSet>
<タグ>
<キー> キー </キー>
<Value> 値 </Value>
</タグ>
</タグセット>
</タグ付け>
リクエスト要素
要素 | データ型 | 必須 | 例 | 説明 |
タギング | Container | 必須 | N/A | トップレベルのコンテナー。 子ノード: TagSet |
タグセット | Container | 必須 | N/A | タグです。 親ノード: タグ付け 子ノード: タグ |
タグ | Container | 任意 | N/A | タグです。 親ノード: TagSet 子ノード: キーと値 |
Key | String | 任意 | a | タグのキー。 親ノード: タグ 子ノード: なし |
値 | String | 任意 | 1 | タグの値。 親ノード: タグ 子ノード: なし |
この操作には、共通のリクエストヘッダーも含まれます。 詳細については、「共通HTTPヘッダー」をご参照ください。
例
非バージョン化バケット内のオブジェクトにタグを追加する
この例では、objectnameという名前のオブジェクトは、bucketnameという名前の未バージョンのバケットに格納されます。 {A: 1} および {b:2} タグをobjectnameという名前のオブジェクトに追加するために、PutObjectTaggingリクエストが送信されます。 2つのタグがオブジェクトに追加されると、200 (OK) が返されます。
リクエストの例
PUT /objectname? タグ付け コンテンツ-長さ: 114 ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com 日付: 3月18日月曜日2019 08:25:17 GMT 承認: OSS qn6qrrqxo2oawuk53otf ****:77Dvh 5wQgIjWjwO/KyRt8dOP **** <タグ付け> <TagSet> <タグ> <キー> a</キー> <値> 1</値> </Tag> <タグ> <キー> b</キー> <値> 2</値> </タグ> </タグセット> </タグ付け>
レスポンスの例
200 (OK) content-length: 0 server: AliyunOSS 接続: キープアライブ x-oss-request-id: 5C8F55ED461FB4A64C00 **** 日付: 3月18日月曜日2019 08:25:17GMT
バージョン管理が有効なバケット内のオブジェクトにタグを追加する
この例では、objectnameという名前のオブジェクトがbucketnameという名前のバージョン付きバケットに格納されます。 {age:18} タグをobjectnameの指定されたバージョンに追加するために、PutObjectTaggingリクエストが送信されます。 タグがオブジェクトに追加されると、200 (OK) が返されます。
リクエストの例
PUT /objectname?tagging&versionId=CAEQExiBgID.jImWlxciIDQ2ZjgwODIyNDk5MTRhNzBiYmQwYTZkMTYzZjM0 **** コンテンツ-長さ: 90 ホスト: BucketName.oss-cn-hangzhou.aliyuncs.com 日付: 6月24日水曜日2020 08:58:15 GMT 承認: OSS qn6qrrqxo2oawuk53otf ****:77Dvh 5wQgIjWjwO/KyRt8dOP **** <タグ付け> <TagSet> <タグ> <キー> 年齢 </キー> <値> 18</値> </タグ> </タグセット> </タグ付け>
レスポンスの例
200 (OK) content-length: 0 server: AliyunOSS 接続: キープアライブ x-oss-request-id: 5EF315A7FBD3EC3232B4 **** 日付: 6月24日水曜日2020 08:58:15 GMT x-oss-version-id: CAEQExiBgID.jImWlxciIDQ2ZjgwODIyNDk5MTRhNzBiYmQwYTZkMTYzZjM0 ****
SDK
次のプログラミング言語のOSS SDKを使用して、PutObjectTagging操作を呼び出すことができます。
エラーコード
エラーコード | HTTPステータスコード | 説明 |
FileAlreadyExists | 409 | タグを設定または更新するオブジェクトは、階層的な名前空間機能が有効になっているバケット内のディレクトリです。 |