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

Object Storage Service:バケットのリスト (Node.js SDK)

最終更新日:Nov 30, 2025

バケットはオブジェクトを格納するために使用されるコンテナーです。すべてのオブジェクトはバケットに格納する必要があります。バケットはアルファベット順にリストされます。ご利用の Alibaba Cloud アカウントに属するすべてのリージョンにわたるバケットをリストし、特定の条件に基づいてフィルター処理できます。

すべてのバケットのリスト

次のコードは、現在の Alibaba Cloud アカウント配下にあるすべてのリージョンのすべてのバケットをリストする方法の例を示しています。

const OSS = require('ali-oss');

const client = new OSS({
  // バケットが配置されているリージョンに region を設定します。たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを oss-cn-hangzhou に設定します。
  region: 'yourregion',
  // 環境変数からアクセス認証情報を取得します。このコードを実行する前に、OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // bucket をご利用のバケット名に設定します。
  bucket: 'yourBucketName',
});

async function listBuckets() {
  try {
    // アカウント配下のすべてのリージョンにあるすべてのバケットをリストします。
    const result = await client.listBuckets();
    console.log(result);
  } catch (err) {
    console.log(err);
  }
}

listBuckets();

指定されたプレフィックスを持つバケットのリスト

次のコードは、現在の Alibaba Cloud アカウント配下にあるすべてのリージョンで、プレフィックスが "example" のバケットをリストする方法の例を示しています。

const OSS = require('ali-oss');

const client = new OSS({
  // バケットが配置されているリージョンに region を設定します。たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを oss-cn-hangzhou に設定します。
  region: 'yourregion',  
  // 環境変数からアクセス認証情報を取得します。このコードを実行する前に、OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // bucket をご利用のバケット名に設定します。
  bucket: 'yourBucketName',
});

async function listBuckets() {
  try {
    const result = await client.listBuckets({
      // プレフィックスを指定します。
      prefix: 'example' 
    });
    // アカウント配下のすべてのリージョンで、指定されたプレフィックスを持つバケットをリストします。
    console.log(result);
  } catch (err) {
    console.log(err);
  }
}

listBuckets();

指定されたマーカー以降のバケットのリスト

次のコードは、現在の Alibaba Cloud アカウント配下にあるすべてのリージョンで、アルファベット順で "examplebucket" より後にあるバケットをリストする方法の例を示しています。

const OSS = require('ali-oss');

const client = new OSS({
  // バケットが配置されているリージョンに region を設定します。たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを oss-cn-hangzhou に設定します。 
  region: 'yourregion',  
  // 環境変数からアクセス認証情報を取得します。このコードを実行する前に、OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // bucket をご利用のバケット名に設定します。
  bucket: 'yourBucketName',
});

async function listBuckets() {
  try {
    const result = await client.listBuckets({
      // マーカーを指定します。
      marker: 'examplebucket' 
    });
    // アカウント配下のすべてのリージョンで、アルファベット順で examplebucket より後にあるバケットをリストします。
    console.log(result);
  } catch (err) {
    console.log(err);
  }
}

listBuckets();

指定された数のバケットのリスト

次のコードは、現在の Alibaba Cloud アカウント配下にあるすべてのリージョンのバケットをリストし、返されるバケットの数を最大 500 に制限する方法の例を示しています。

const OSS = require('ali-oss');

const client = new OSS({
  // バケットが配置されているリージョンに region を設定します。たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを oss-cn-hangzhou に設定します。
  region: 'yourregion',
  // 環境変数からアクセス認証情報を取得します。このコードを実行する前に、OSS_ACCESS_KEY_ID および OSS_ACCESS_KEY_SECRET 環境変数が設定されていることを確認してください。
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // bucket をご利用のバケット名に設定します。
  bucket: 'yourBucketName',
});

async function listBuckets() {
  try {
    const result = await client.listBuckets({
      // max-keys パラメーターは、返されるバケットの最大数を指定します。max-keys の値は 1,000 を超えることはできません。max-keys を指定しない場合、デフォルトで最大 100 個のバケットが返されます。
      // 500 個のバケットをリストします。
      'max-keys': 500
    });
    console.log(result);
  } catch (err) {
    console.log(err);
  }
}

listBuckets();

関連ドキュメント

  • バケットをリストするための完全なサンプルコードについては、「GitHub の例」をご参照ください。

  • バケットをリストするための API 操作の詳細については、「ListBuckets (GetService)」をご参照ください。