全部产品
Search
文档中心

Object Storage Service:Menanyakan wilayah sebuah bucket (Python SDK V2)

更新时间:Nov 09, 2025

Topik ini menjelaskan cara menanyakan wilayah tempat bucket berada menggunakan OSS SDK untuk Python V2.

Catatan

  • Kode contoh dalam topik ini menggunakan ID wilayah cn-hangzhou untuk wilayah China (Hangzhou). Secara default, titik akhir publik digunakan untuk mengakses sumber daya di bucket. Jika Anda ingin mengakses sumber daya di bucket 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 OSS.

  • Dalam topik ini, kredensial akses diambil dari variabel lingkungan. Untuk informasi lebih lanjut tentang cara mengonfigurasi kredensial akses, lihat Konfigurasikan Kredensial Akses.

  • Untuk menanyakan wilayah tempat bucket berada, Anda harus memiliki izin oss:GetBucketLocation. Untuk informasi lebih lanjut, lihat Berikan Kebijakan Kustom kepada Pengguna RAM.

Definisi metode

get_bucket_location(request: GetBucketLocationRequest, **kwargs) → GetBucketLocationResult

Parameter permintaan

Parameter

Tipe

Deskripsi

request

GetBucketLocationRequest

Menentukan parameter permintaan. Untuk informasi lebih lanjut, lihat GetBucketLocationRequest

Nilai kembali

Tipe

Deskripsi

GetBucketLocationResult

Nilai balik. Untuk informasi lebih lanjut, lihat GetBucketLocationResult

Untuk informasi lebih lanjut tentang definisi lengkap metode ini, lihat get_bucket_location.

Kode contoh

Berikut adalah kode contoh cara menanyakan wilayah tempat bucket berada.

import argparse
import alibabacloud_oss_v2 as oss

# Buat parser argumen baris perintah. Skrip ini digunakan untuk mendapatkan informasi lokasi bucket tertentu.
parser = argparse.ArgumentParser(description="Dapatkan lokasi bucket OSS tertentu.")

# Tambahkan argumen baris perintah --region, yang menentukan wilayah tempat bucket berada. Argumen ini wajib.
parser.add_argument('--region', help='Wilayah tempat bucket berada.', required=True)

# Tambahkan argumen baris perintah --bucket, yang menentukan nama bucket. Argumen ini wajib.
parser.add_argument('--bucket', help='Nama bucket untuk mendapatkan lokasi.', required=True)

# Tambahkan argumen baris perintah --endpoint, yang menentukan nama domain yang dapat digunakan layanan lain untuk mengakses OSS. Argumen ini opsional.
parser.add_argument('--endpoint', help='Nama domain yang dapat digunakan layanan lain untuk mengakses OSS.')

def main():
    """
    Fungsi utama, yang digunakan untuk mem-parsing argumen baris perintah dan mendapatkan informasi lokasi bucket tertentu.
    """

    args = parser.parse_args()  # Parse argumen baris perintah.

    # Muat informasi kredensial dari variabel lingkungan untuk verifikasi identitas.
    credentials_provider = oss.credentials.EnvironmentVariableCredentialsProvider()

    # Gunakan konfigurasi default dari SDK, dan atur penyedia kredensial dan informasi wilayah.
    cfg = oss.config.load_default()
    cfg.credentials_provider = credentials_provider
    cfg.region = args.region

    # Jika argumen endpoint diberikan, atur endpoint dalam konfigurasi.
    if args.endpoint is not None:
        cfg.endpoint = args.endpoint

    # Buat klien OSS menggunakan informasi yang telah dikonfigurasi.
    client = oss.Client(cfg)

    # Konstruksi permintaan untuk mendapatkan informasi lokasi bucket tertentu.
    request = oss.GetBucketLocationRequest(bucket=args.bucket)

    # Eksekusi permintaan dan dapatkan tanggapan.
    result = client.get_bucket_location(request)

    # Cetak kode status, ID permintaan, dan informasi lokasi dari tanggapan.
    print(f'kode status: {result.status_code},'
          f' ID permintaan: {result.request_id},'
          f' lokasi: {result.location}'
    )

if __name__ == "__main__":
    main()  # Titik masuk skrip. Fungsi utama dipanggil ketika file dijalankan langsung.

Referensi