Topik ini menjelaskan cara menggunakan OSS SDK untuk C# guna memperoleh informasi tentang bucket tertentu, seperti status pelacakan akses, wilayah, tanggal pembuatan, ID pemilik, kelas penyimpanan, titik akhir publik, titik akhir internal di wilayah yang sama, status replikasi lintas wilayah, dan status pengendalian versi. Informasi ini dapat digunakan untuk melakukan operasi yang sesuai.
Peringatan
Kode contoh dalam topik ini menggunakan Wilayah China (Hangzhou) (ID:
cn-hangzhou) sebagai contoh. Titik akhir publik digunakan secara default. Jika Anda ingin 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 OSS.Untuk memperoleh informasi bucket, Anda harus memiliki izin
oss:GetBucketInfo. Untuk informasi lebih lanjut, lihat Memberikan Izin Kustom kepada Pengguna RAM.
Kode contoh
Gunakan kode contoh berikut untuk memperoleh informasi bucket.
using OSS = AlibabaCloud.OSS.V2; // Buat alias untuk Alibaba Cloud OSS SDK untuk menyederhanakan penggunaan selanjutnya.
var region = "cn-hangzhou"; // Diperlukan. Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di Wilayah China (Hangzhou), atur wilayah ke cn-hangzhou.
var bucket = "nama bucket Anda"; // Diperlukan. Tentukan nama bucket tujuan.
var endpoint = null as string; // Opsional. Tentukan titik akhir yang digunakan untuk mengakses OSS. Misalnya, jika bucket berada di Wilayah China (Hangzhou), atur titik akhir ke https://oss-cn-hangzhou.aliyuncs.com.
// Muat konfigurasi default dari OSS SDK. Konfigurasi ini secara otomatis membaca informasi kredensial (seperti Pasangan Kunci Akses) dari variabel lingkungan.
var cfg = OSS.Configuration.LoadDefault();
// Secara eksplisit konfigurasikan SDK untuk mendapatkan kredensial dari variabel lingkungan untuk verifikasi identitas. Formatnya adalah OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET.
cfg.CredentialsProvider = new OSS.Credentials.EnvironmentVariableCredentialsProvider();
// Tentukan wilayah bucket dalam konfigurasi.
cfg.Region = region;
// Jika titik akhir ditentukan, itu akan menimpa titik akhir default.
if(endpoint != null)
{
cfg.Endpoint = endpoint;
}
// Buat instans klien OSS berdasarkan konfigurasi.
using var client = new OSS.Client(cfg);
// Panggil metode GetBucketInfoAsync untuk memperoleh informasi dasar tentang bucket yang ditentukan.
var result = await client.GetBucketInfoAsync(new OSS.Models.GetBucketInfoRequest()
{
Bucket = bucket
});
// Cetak hasilnya.
Console.WriteLine("GetBucketInfo selesai"); // Pesan yang menunjukkan bahwa operasi telah selesai.
Console.WriteLine($"StatusCode: {result.StatusCode}"); // Kode status HTTP.
Console.WriteLine($"RequestId: {result.RequestId}"); // ID permintaan, yang digunakan untuk pemecahan masalah di Alibaba Cloud.
Console.WriteLine("Header Respons:"); // Header respons.
result.Headers.ToList().ForEach(x => Console.WriteLine(x.Key + " : " + x.Value)); // Telusuri dan cetak semua header respons.
Console.WriteLine($"Lokasi: {result.BucketInfo!.Location}"); // Cetak wilayah bucket.
Console.WriteLine($"Kelas Penyimpanan: {result.BucketInfo!.StorageClass}"); // Cetak kelas penyimpanan bucket.
Console.WriteLine($"Titik Akhir Internal: {result.BucketInfo!.IntranetEndpoint}"); // Cetak titik akhir internal bucket.
Console.WriteLine($"Titik Akhir Publik: {result.BucketInfo!.ExtranetEndpoint}"); // Cetak titik akhir publik bucket.Daftar informasi bucket umum
Parameter | Deskripsi |
BucketInfo.Name | Nama bucket. |
BucketInfo.AccessMonitor | Status pelacakan akses bucket. |
BucketInfo.Location | Wilayah tempat bucket berada. |
BucketInfo.CreationDate | Tanggal pembuatan bucket. |
BucketInfo.ExtranetEndpoint | Titik akhir publik bucket. |
BucketInfo.IntranetEndpoint | Titik akhir internal yang digunakan untuk mengakses bucket dari Instance ECS di wilayah yang sama. |
BucketInfo.Owner | Parameter ini mencakup subparameter berikut: BucketInfo.Owner.ID: ID pengguna pemilik bucket. |
BucketInfo.StorageClass | Kelas penyimpanan bucket. |
BucketInfo.Versioning | Status pengendalian versi bucket. |
BucketInfo.CrossRegionReplication | Status replikasi lintas wilayah bucket. |
Referensi
Untuk informasi lebih lanjut tentang bucket, lihat Bucket.
Untuk kode contoh lengkap yang digunakan untuk memperoleh informasi bucket, lihat GetBucketInfo.cs.