全部产品
Search
文档中心

Object Storage Service:Dapatkan metadata objek (Android SDK)

更新时间:Nov 30, 2025

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