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

Object Storage Service:オブジェクトのダウンロード

最終更新日:Dec 18, 2023

既定では、バージョン管理が有効なバケット内のオブジェクトに対してGetObject操作を呼び出すと、オブジェクトの現在のバージョンのみが返されます。

背景情報

GetObject操作を呼び出してバケット内のオブジェクトをダウンロードすると、次のいずれかの結果が得られます。

  • オブジェクトの現在のバージョンが削除マーカーである場合、OSSは404 Not Foundを返します。

  • リクエストでオブジェクトのバージョンIDが指定されている場合、OSSは指定されたバージョンのオブジェクトを返します。 リクエストでバージョンIDがnullに設定されている場合、OSSはバージョンIDがnullのバージョンを返します。

  • リクエストで指定されたバージョンIDが削除マーカーのバージョンIDである場合、OSSは405メソッドが許可されていません。

サンプルコード

次のコードは、オブジェクトをダウンロードする方法の例を示しています。

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

const client = new OSS({
  // バケットが配置されているリージョンを指定します。 たとえば、バケットが中国 (杭州) リージョンにある場合、リージョンを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、
  // バケットの名前を指定します。 
  bucket: 'yourbucketname'
});

async関数get() {
  // オブジェクトの名前を指定します。 
  const result = await client.get('filename', {    
      // ダウンロードしたオブジェクトのバージョンIDを表示します。 
      versionId: 'versionid' 、
  });
  console.log(result.content);
}
get(); 

参考資料

オブジェクトをダウンロードするために呼び出すことができるAPI操作の詳細については、「GetObject」をご参照ください。