全部产品
Search
文档中心

Object Storage Service:Dapatkan tag objek (Python SDK V1)

更新时间:Nov 27, 2025

Setelah menetapkan tag pada suatu objek, Anda dapat mengambil informasi tag tersebut. Jika Pengendalian versi diaktifkan untuk bucket, OSS secara default mengambil tag dari versi terkini objek. Untuk mengambil tag dari versi tertentu, tentukan ID versi (versionId) objek tersebut.

Catatan penggunaan

  • Topik ini menggunakan titik akhir publik wilayah China (Hangzhou). Jika Anda mengakses OSS dari layanan Alibaba Cloud lain yang berada di wilayah yang sama dengan OSS, gunakan titik akhir internal. Untuk informasi selengkapnya mengenai wilayah dan titik akhir OSS, lihat Wilayah dan titik akhir.

  • Pada topik ini, instans OSSClient dibuat menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Security Token Service (STS), lihat Inisialisasi.

  • Untuk mengambil tag objek, Anda harus memiliki izin oss:GetObjectTagging. Untuk informasi selengkapnya, lihat Berikan izin kustom kepada RAM user.

Dapatkan tag objek

Jika Pengendalian versi dinonaktifkan untuk bucket, Anda dapat mengambil informasi tag objek tersebut. Jika Pengendalian versi diaktifkan, OSS secara default mengambil tag dari versi terkini objek.

Kode berikut menunjukkan cara mengambil tag file exampleobject.txt di folder exampledir dalam bucket examplebucket.

# -*- coding: utf-8 -*-

import oss2
from oss2.models import Tagging, TaggingRule
from oss2.credentials import EnvironmentVariableCredentialsProvider

# Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah ditetapkan.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# Tentukan Endpoint untuk wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), tetapkan Endpoint ke https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Tentukan wilayah tempat Endpoint berada, seperti cn-hangzhou. Perhatikan bahwa parameter ini diperlukan untuk tanda tangan V4.
region = "cn-hangzhou"

# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# Tentukan path lengkap objek. Path lengkap tidak boleh mengandung nama bucket. Contohnya: exampledir/exampleobject.txt.
object_name = 'exampledir/exampleobject.txt'

# Dapatkan tag file tersebut.
result = bucket.get_object_tagging(object_name)

# Tampilkan informasi tag.
for key in result.tag_set.tagging_rule:
    print('tagging key: {}, value: {}'.format(key, result.tag_set.tagging_rule[key]))

Dapatkan tag versi tertentu dari suatu objek

Jika Pengendalian versi diaktifkan untuk bucket, Anda dapat mengambil tag dari versi tertentu objek dengan menentukan ID versi (versionId) objek tersebut.

Kode berikut menunjukkan cara mengambil tag dari versi tertentu file exampleobject.txt di folder exampledir dalam bucket examplebucket.

Catatan

Untuk informasi selengkapnya tentang cara mendapatkan ID versi, lihat Daftar objek (Python SDK V1).

# -*- coding: utf-8 -*-

import oss2
from oss2.models import Tagging
from oss2.credentials import EnvironmentVariableCredentialsProvider

# Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah ditetapkan.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())

# Tentukan Endpoint untuk wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), tetapkan Endpoint ke https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Tentukan wilayah tempat Endpoint berada, seperti cn-hangzhou. Perhatikan bahwa parameter ini diperlukan untuk tanda tangan V4.
region = "cn-hangzhou"

# Ganti examplebucket dengan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "examplebucket", region=region)

# Tentukan path lengkap objek. Path lengkap tidak boleh mengandung nama bucket. Contohnya: exampledir/exampleobject.txt.
object_name = 'exampledir/exampleobject.txt'
# Tentukan ID versi objek, misalnya CAEQMxiBgICAof2D0BYiIDJhMGE3N2M1YTI1NDQzOGY5NTkyNTI3MGYyMzJm****.
version_id = 'CAEQMxiBgICAof2D0BYiIDJhMGE3N2M1YTI1NDQzOGY5NTkyNTI3MGYyMzJm****'

params = dict()
params['versionId'] = version_id

result = bucket.get_object_tagging(object_name, params=params)
print(result)

Referensi

  • Untuk kode contoh lengkap yang digunakan untuk mengambil tag objek, lihat GitHub.

  • Untuk informasi selengkapnya mengenai operasi API yang digunakan untuk mengambil tag objek, lihat GetObjectTagging.