Gunakan metode HeadObject untuk mengambil metadata objek tanpa kontennya.
Catatan
Metadata objek menjelaskan properti suatu objek, mencakup header HTTP standar dan metadata yang ditentukan pengguna. Header HTTP standar dapat digunakan untuk menentukan kebijakan permintaan HTTP, seperti kebijakan cache objek atau unduhan paksa, sedangkan metadata yang ditentukan pengguna dapat digunakan untuk mengidentifikasi tujuan atau properti objek tersebut. Untuk informasi selengkapnya, lihat Object metadata.
OSS SDK untuk Android tidak mendukung pengaturan atau modifikasi metadata objek.
Sebelum menjalankan kode contoh dalam topik ini, Anda harus membuat instans OSSClient dengan menggunakan metode seperti nama domain kustom atau Security Token Service (STS). Untuk informasi selengkapnya, lihat Initialization (Android SDK).
Kode contoh
Kode berikut menunjukkan cara mengambil metadata objek.
// Buat permintaan untuk mendapatkan metadata objek secara sinkron.
// Tentukan nama bucket, misalnya examplebucket, dan path lengkap objek, misalnya exampledir/exampleobject.txt. Path lengkap tidak boleh mengandung nama bucket.
HeadObjectRequest head = new HeadObjectRequest("examplebucket", "exampledir/exampleobject.txt");
// Dapatkan metadata objek.
OSSAsyncTask task = oss.asyncHeadObject(head, new OSSCompletedCallback<HeadObjectRequest, HeadObjectResult>() {
@Override
public void onSuccess(HeadObjectRequest request, HeadObjectResult result) {
// Dapatkan ukuran objek.
Log.d("headObject", "object Size: " + result.getMetadata().getContentLength());
// Dapatkan tipe objek.
Log.d("headObject", "object Content Type: " + result.getMetadata().getContentType());
}
@Override
public void onFailure(HeadObjectRequest request, ClientException clientExcepion, ServiceException serviceException) {
// Terjadi pengecualian pada permintaan.
if (clientExcepion != null) {
// Terjadi pengecualian pada client, seperti error jaringan.
clientExcepion.printStackTrace();
}
if (serviceException != null) {
// Terjadi pengecualian pada server.
Log.e("ErrorCode", serviceException.getErrorCode());
Log.e("RequestId", serviceException.getRequestId());
Log.e("HostId", serviceException.getHostId());
Log.e("RawMessage", serviceException.getRawMessage());
}
}
});
// task.waitUntilFinished(); // Tunggu hingga tugas selesai.Referensi
Untuk informasi selengkapnya tentang operasi API untuk mengambil metadata objek, lihat GetObjectMeta.
Untuk informasi selengkapnya tentang cara menginisialisasi instans OSSClient, lihat Initialize an OSSClient instance for Android.