Bucket adalah kontainer yang digunakan untuk menyimpan objek di dalam Object Storage Service (OSS). Setiap objek berada di dalam sebuah bucket. Topik ini menjelaskan cara menanyakan wilayah sebuah bucket.
Catatan penggunaan
Dalam topik ini, titik akhir publik Wilayah China (Hangzhou) digunakan. Jika Anda ingin mengakses OSS dari layanan Alibaba Cloud lainnya di wilayah yang sama dengan OSS, gunakan titik akhir internal. Untuk informasi lebih lanjut tentang wilayah dan titik akhir OSS, lihat Wilayah dan Titik Akhir OSS.
Dalam topik ini, kredensial akses diperoleh dari variabel lingkungan. Untuk informasi lebih lanjut tentang cara mengonfigurasi kredensial akses, lihat Mengonfigurasi Kredensial Akses Menggunakan OSS SDK untuk Python 1.0.
Dalam topik ini, instans OSSClient dibuat menggunakan titik akhir OSS. Jika Anda ingin membuat instans OSSClient menggunakan nama domain kustom atau Layanan Token Keamanan (STS), lihat Inisialisasi.
Untuk menanyakan wilayah sebuah bucket, Anda harus memiliki izin
oss:GetBucketLocation. Untuk informasi lebih lanjut, lihat Melampirkan Kebijakan Kustom ke Pengguna RAM.
Kode contoh
Berikut ini adalah kode contoh yang menunjukkan cara menanyakan wilayah atau lokasi sebuah bucket:
# -*- coding: utf-8 -*-
import oss2
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 dikonfigurasi.
auth = oss2.ProviderAuthV4(EnvironmentVariableCredentialsProvider())
# Tentukan titik akhir wilayah tempat bucket berada. Misalnya, jika bucket berada di Wilayah China (Hangzhou), atur titik akhir ke https://oss-cn-hangzhou.aliyuncs.com.
endpoint = "https://oss-cn-hangzhou.aliyuncs.com"
# Tentukan ID wilayah yang sesuai dengan titik akhir. Contoh: cn-hangzhou. Parameter ini diperlukan jika Anda menggunakan algoritma tanda tangan V4.
region = "cn-hangzhou"
# Tentukan nama bucket Anda.
bucket = oss2.Bucket(auth, endpoint, "yourBucketName", region=region)
# Menanyakan wilayah bucket.
result = bucket.get_bucket_location()
print('lokasi: ' + result.location)
Referensi
Untuk kode contoh lengkap yang digunakan untuk menanyakan wilayah sebuah bucket, kunjungi GitHub.
Untuk informasi lebih lanjut tentang operasi API yang dapat Anda panggil untuk menanyakan wilayah sebuah bucket, lihat GetBucketLocation.