Setelah sebelumnya kita telah mengulas singkat terkait Alibaba Cloud Object Storage Service dan juga bagaimana cara mengintegrasikan SDK OSS dengan Visual Studio, maka selanjutnya topik yang akan kita bahas adalah bagaimana menggunakan SDK OSS dari Alibaba Cloud untuk keperluan mengolah OSS. Post kali ini akan menyajikan sample code yang berfungsi untuk beberapa poin seperti:
- Membuat Bucket
- Menghapus Bucket
- Mengambil Data Bucket
- Mengupload Obyek ke Bucket
- Mengunduh Obyek dari Bucket
- Mengambil List Obyek pada Bucket
- Menghapus Obyek dari Bucket
Sample di atas merupakan fungsi dasar dalam mengelola OSS. Walaupun bersifat dasar, tapi ini merupakan fungsi-fungsi yang sangat sering digunakan dan krusial jika kita ingin mengelola OSS. Tanpa basa-basi lagi, mari kita masuk ke pembahasannya.
Persyaratan
- Visual Studio 2010 atau diatasnya. Dalam contoh ini, penulis menggunakan Visual Studio 2017
- Koneksi Internet
- AccessKey (Baca cara generate AccessKey)
- SDK OSS (Baca cara install SDK OSS)
Istilah
- Endpoint
merupakan istilah untuk URL yang akan kita gunakan untuk memanggil API Alibaba Cloud - accessKeyId dan accessKeySecret
merupakan sepasang kunci yang diperlukan sebagai alat identifikasi user ketika user ingin mengakses data yang tersimpan di Alibaba Cloud - bucketName
merupakan nama dari Bucket yang ada pada OSS. Bucket Name harus sama dengan nama yang dibuat di Alibaba Cloud Console. Apabila di ACC kita membuat nama bucket berupa bucket01, maka bucketName yang nantinya diinput ke dalam API juga harus bucket01.
Membuat Bucket Baru
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); client.CreateBucket(bucketName);
Menghapus Bucket
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); client.DeleteBucket(bucketName);
Mengambil List Bucket Pada OSS
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret);
var buckets = client.ListBuckets(); foreach (var bucket in buckets) { Console.WriteLine(bucket.Name + ", " + bucket.Location + ", " + bucket.Owner); }
Mengunggah Obyek ke Bucket
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); client.PutObject(bucketName, key, filePathToUpload);
Mengunduh Obyek Dari Bucket
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); var object = ossClient.GetObject(bucketName, key);
Mengambil List Obyek dari Bucket
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); var listResult = client.ListObjects(bucketName); foreach (var summary in listResult.ObjectSummaries) { Console.WriteLine(summary.Key); }
Menghapus Obyek dari Bucket
OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret); client.DeleteObject(bucketName, key);