バケットはオブジェクトを格納するコンテナーです。すべてのオブジェクトはバケットに格納されます。ご利用の Alibaba Cloud アカウント内のすべてのリージョンで、特定の条件を満たすバケットをリスト表示できます。リスト表示されるバケットはアルファベット順にソートされます。
注意事項
Object Storage Service (OSS) がサポートするリージョンとそのエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。
バケットをリスト表示するには、
oss:ListBuckets権限が必要です。詳細については、「RAM ユーザーへのカスタムアクセスポリシーの付与」をご参照ください。次のコードは、ご利用の Alibaba Cloud アカウントのすべてのリージョンにあるバケットをリスト表示します。この操作は、特定のリージョン内のバケットのリスト表示をサポートしていません。結果は、指定されたエンドポイントのリージョンには影響されません。
サンプルコード
次のコードは、ご利用の Alibaba Cloud アカウントのすべてのリージョンにあるすべてのバケットをリスト表示する方法を示しています。
import Client, { RequestError } from '@aliyun/oss';
// OSS クライアントインスタンスを作成します。
const client = new Client({
// Security Token Service (STS) の一時的なアクセス認証情報の AccessKey ID と置き換えます。
accessKeyId: 'yourAccessKeyId',
// STS の一時的なアクセス認証情報の AccessKey Secret と置き換えます。
accessKeySecret: 'yourAccessKeySecret',
// STS の一時的なアクセス認証情報のセキュリティトークンと置き換えます。
securityToken: 'yourSecurityToken',
});
// すべてのバケットをリスト表示します。
const listBuckets = async () => {
try {
// listBuckets メソッドを呼び出して、すべてのバケットをリスト表示します。
const res = await client.listBuckets({});
// 結果を出力します。
console.log(JSON.stringify(res));
} catch (err) {
// リクエストエラーをキャッチして処理します。
if (err instanceof RequestError) {
console.log('Error code: ', err.code); // エラーコード
console.log('Error message: ', err.message); // エラーの説明
console.log('Request ID: ', err.requestId); // リクエストの一意の識別子
console.log('HTTP status code: ', err.status); // HTTP 応答ステータスコード
console.log('Error category: ', err.ec); // エラーカテゴリ
} else {
console.log('Unknown error: ', err); // RequestError 型ではないエラー
}
}
};
// 関数を呼び出して、すべてのバケットをリスト表示します。
listBuckets();
その他のシナリオ
関連情報
バケットをリスト表示するための API 操作の詳細については、「ListBuckets (GetService)」をご参照ください。