Topik ini menjelaskan cara menggunakan OSS SDK untuk Python 2.0 untuk mengquery tag dari sebuah objek.
Catatan penggunaan
Kode contoh dalam topik ini menggunakan Wilayah Hangzhou, Tiongkok (
cn-hangzhou) sebagai contoh. Secara default, titik akhir publik digunakan. Untuk mengakses OSS dari layanan Alibaba Cloud lainnya di wilayah yang sama, gunakan titik akhir internal. Untuk informasi lebih lanjut tentang wilayah dan titik akhir yang didukung oleh OSS, lihat Wilayah dan Titik Akhir.Satu set pasangan kunci-nilai digunakan untuk menandai sebuah objek. Untuk informasi lebih lanjut, lihat Penandaan Objek.
Untuk informasi lebih lanjut tentang cara mengquery tag objek, lihat GetObjectTagging.
Untuk mengquery tag objek, Anda harus memiliki izin
oss:GetObjectTagging. Untuk informasi lebih lanjut, lihat Memberikan Izin Kustom kepada Pengguna RAM.
Definisi metode
get_object_tagging(request: GetObjectTaggingRequest, **kwargs) → GetObjectTaggingResultParameter permintaan
Parameter | Tipe | Deskripsi |
request | GetObjectTaggingRequest | Parameter permintaan. Untuk informasi lebih lanjut, lihat GetObjectTaggingRequest |
Nilai kembali
Tipe | Deskripsi |
GetObjectTaggingResult | Nilai kembali. Untuk informasi lebih lanjut, lihat GetObjectTaggingResult |
Untuk definisi metode lengkap, lihat get_object_tagging.
Kode contoh
Anda dapat menggunakan kode berikut untuk mengquery tag untuk objek tertentu dalam bucket.
import argparse
import alibabacloud_oss_v2 as oss
# Buat parser argumen baris perintah untuk memproses parameter yang diteruskan oleh pengguna dari baris perintah.
parser = argparse.ArgumentParser(description="contoh get object tagging")
# Tambahkan argumen baris perintah yang diperlukan dan opsional.
# --region: Wilayah tempat bucket OSS berada.
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)
# --bucket: Nama bucket.
parser.add_argument('--bucket', help='Nama bucket.', required=True)
# --endpoint: Parameter opsional yang menentukan nama domain yang digunakan untuk mengakses OSS.
parser.add_argument('--endpoint', help='Nama domain yang dapat digunakan layanan lain untuk mengakses OSS')
# --key: Kunci objek (file) di OSS.
parser.add_argument('--key', help='Nama objek.', required=True)
def main():
# Parse argumen baris perintah.
args = parser.parse_args()
# Muat kredensial otentikasi yang diperlukan untuk OSS dari variabel lingkungan.
credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()
# Buat objek konfigurasi menggunakan konfigurasi default yang disediakan oleh SDK.
cfg = oss.config.load_default()
# Setel penyedia kredensial ke objek yang dibuat sebelumnya.
cfg.credentials_provider = credentials_provider
# Setel wilayah untuk klien OSS berdasarkan input pengguna.
cfg.region = args.region
# Jika pengguna memberikan titik akhir kustom, perbarui konfigurasi.
if args.endpoint is not None:
cfg.endpoint = args.endpoint
# Buat instance klien OSS menggunakan konfigurasi di atas.
client = oss.Client(cfg)
# Query tag dari objek yang ditentukan.
result = client.get_object_tagging(oss.GetObjectTaggingRequest(
bucket=args.bucket,
key=args.key,
))
# Cetak hasilnya.
print(f'kode status: {result.status_code},'
f' ID permintaan: {result.request_id},'
f' ID versi: {result.version_id},'
)
# Jika tag ada, lakukan iterasi dan cetak pasangan kunci-nilai setiap tag.
if result.tag_set.tags:
for o in result.tag_set.tags:
print(f'tags kunci: {o.key}, tags nilai: {o.value}')
# Panggil fungsi utama saat skrip ini dijalankan.
if __name__ == "__main__":
main()
Referensi
Untuk kode contoh lengkap untuk mengquery tag objek, lihat get_object_tagging.py.