すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:OSS SDK for Androidを使用してオブジェクトメタデータを照会する

最終更新日:Feb 21, 2024

HeadObject操作を呼び出して、オブジェクトのメタデータのみを照会できます。 この操作を呼び出すと、オブジェクトの内容は返されません。

使用上の注意

  • オブジェクトメタデータは、オブジェクトの属性を記述する。 メタデータは、標準HTTPヘッダおよびユーザメタデータを含む。 標準のHTTPヘッダーを使用して、キャッシュや強制ダウンロードなど、オブジェクトのHTTPリクエストポリシーを指定できます。 オブジェクトのユーザーメタデータを設定して、オブジェクトの目的または属性を識別できます。 詳細については、「オブジェクトメタデータの管理」をご参照ください。

  • Object Storage Service (OSS) SDK for Androidを使用してオブジェクトメタデータを設定または変更することはできません。

  • このトピックのサンプルコードを実行する前に、カスタムドメイン名やSecurity Token Service (STS) などの方法を使用してOSSClientインスタンスを作成する必要があります。 詳細については、「初期化」をご参照ください。

次のサンプルコードは、オブジェクトメタデータのクエリ方法の例を示しています。

// オブジェクトメタデータを同期クエリするリクエストを作成します。 
// バケットの名前とオブジェクトの完全パスを指定します。 この例では、バケット名はexamplebucketで、オブジェクトの完全パスはexampledir/exampleobject.txtです。 オブジェクトのフルパスにバケット名を含めないでください。 
HeadObjectRequest head = new HeadObjectRequest("examplebucket", "exampledir/exampleobject.txt");

// オブジェクトメタデータを照会します。 
OSSAsyncTask task = oss.asyncHeadObject(head, new OSSCompletedCallback<HeadObjectRequest, HeadObjectResult>() {
    @オーバーライド
    public void onSuccess(HeadObjectRequestリクエスト, HeadObjectResult結果) {
    
    // オブジェクトの長さを取得します。 
        Log.d("headObject", "object Size: " + result.getMetadata().getContentLength()); 
    // オブジェクトの型を照会します。 
        Log.d("headObject", "object Content Type: " + result.getMetadata().getContentType()); 
    }

    @オーバーライド
    public void onFailure(HeadObjectRequest request, ClientException clientExcepion, ServiceException serviceException) {
        // リクエスト例外を処理します。 
        if (clientExcepion != null) {
            // ネットワーク例外などのクライアント例外を処理します。 
            clientExcepion.printStackTrace();
        }
        if (serviceException != null) {
            // サービス例外を処理します。 
            Log.e("ErrorCode", serviceException.getErrorCode());
            Log.e("RequestId", serviceException.getRequestId());
            Log.e("HostId", serviceException.getHostId());
            Log.e("RawMessage", serviceException.getRawMessage());
        }
    }
});

// task.waitUntilFinished(); // オブジェクトメタデータが照会されるまで待ちます。

参考資料

  • オブジェクトメタデータを照会するために呼び出すAPI操作の詳細については、「GetObjectMeta」をご参照ください。

  • OSSClientインスタンスを初期化する方法の詳細については、「初期化」をご参照ください。