お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

オブジェクトのダウンロード

このSDKメソッドは、バケットからオブジェクトをダウンロードするために使用できます。レスポンスはblob形式になります。以下のコードスニペットで使用されているStratusリファレンスは、コンポーネントインスタンスです。

バケットのバージョニングステータスに関する想定レスポンス:

  • versionId を渡さない場合、リクエストで指定したキーとともに最新のオブジェクトが返されます。
  • バケットでバージョニングが有効にされた後、無効にされた場合。デフォルトでは、プリンシパルの最初のオブジェクトが返されます。このオブジェクトの最新バージョンをダウンロードするには、versionId パラメータに「topVersion」の値を渡す必要があります。
  • 特定のバージョンを取得するには、versionId クエリパラメータに有効なバージョンを値として使用します。

使用パラメータ

パラメータ名 データ型 定義
key String オブジェクトの名前を保持します。
options JSON Object
  • versionId: オプションのStringパラメータです。必要なオブジェクトバージョンの一意の version ID を保持します。
  • range: オプションのStringパラメータです。必要なオブジェクトのバイト範囲です。オブジェクトの特定部分を取得するために使用されます。
  • cached: オプションのBooleanパラメータです。
    • オブジェクトのキャッシュバージョンを取得するために使用されます。
    • true」または「false」の2つの値のみを受け付けます。
    • このパラメータが使用されない場合、値は false になります。
    • バケットでキャッシュが有効で、このパラメータを渡した場合、値は true になります。この場合、オブジェクトはキャッシュドメインから取得されます。
  • signed: オプションのBooleanパラメータです。デフォルト値は「false」です。署名付きURLを取得するためのAPI呼び出しを行います。
  • signedUrlFn:
    • オプションのFunctionパラメータです。
    • サーバーSDK(JavaNode.js、およびPython)で提供される署名付きURL APIレスポンスを返すコールバックファンクションです。ファイルをダウンロードするために使用されます。
    • このファンクションは非同期ファンクションとPromiseのみを受け付けます。
    • このファンクションを使用すると、CatalystはキャッシュURLと有効期限をパラメータとして渡し、署名付きURLの生成に使用できます。
processCallback Function ファイルダウンロード中のコールバックファンクションです。

オブジェクト名を使用したオブジェクトのダウンロード

以下のSDKスニペットを使用すると、key を使用してStratusのバケットからオブジェクトをダウンロードできます。

copy
const getObject = await bucket.getObject("key");
const getObjectStart = getObject.start(); // リクエストを開始する	
const getObjectAbort = getObject.abort(); // リクエストを中止する

特定バージョンのオブジェクトのダウンロード

以下のSDKスニペットを使用すると、keyversionId を使用してStratusのバケットから特定バージョンのオブジェクトをダウンロードできます。

copy
const options = {
  'versionId': 'djkshr8374yiuhf48', // オブジェクトの特定バージョンをダウンロードする
}
const getObject = await bucket.getObject("key", options);
const getObjectStart = getObject.start(); // リクエストを開始する 
const getObjectAbort = getObject.abort(); // リクエストを中止する

プロセスコールバック付きオブジェクトのダウンロード

以下のSDKスニペットを使用すると、プロセスコールバックオプションを使用してStratusのバケットから特定のオブジェクトをダウンロードできます。このSDKは、ダウンロード操作とともにロギング、ロード/バッファ画面のレンダリングなどの追加ファンクションを実行したい場合に最適です。

copy
// オブジェクトのダウンロード中のプロセスコールバック
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
  'versionId': 'djkshr8374yiuhf48'
}
const getObject = await bucket.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する 
const getObjectAbort = getObject.abort(); // リクエストを中止する

レスポンス例

copy
{
 	"status": 200,
 	"content": {Blob Data},
 	"message": "OK"
}

想定される例外

  • 404: オブジェクトまたはBucketが見つかりません
  • 416: リクエストされた範囲が満たせません

オブジェクトの特定部分のダウンロード

このセクションでは、Stratusからローカルシステムにオブジェクトの必要なバイト範囲をダウンロードできるSDKメソッドについて説明します。以下のコードスニペットで使用されているStratusリファレンスは、コンポーネントインスタンスです。

このメソッドは、オブジェクトの開始バイトと終了バイトの範囲を使用して、オブジェクトを複数のバイト範囲に分割する方式で機能します。

copy
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
 'range': '0-2000' // オブジェクトのバイト単位の開始・終了範囲
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する
const getObjectAbort = getObject.abort(); // リクエストを中止する

レスポンス例

copy
{
    "status": 206,
    "content": {Blob Data},
    "message": "PARTIAL_CONTENT"
}

署名付きURLを使用したオブジェクトのダウンロード

非同期ファンクションの使用

copy
// 署名付きURLを使用したオブジェクトのダウンロード
// 非同期ファンクションの使用
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
 'range': '0-2000' // オブジェクトのバイト単位の開始・終了範囲,
	'signed': true, // 署名付きURLを使用してバケットからオブジェクトを取得することを宣言する
	'signedUrlFn' : async (functionData) => {
	console.log("Data : " + functionData);
      // ファンクションロジック
     return {
		"signed_url": "" //署名付きURL
     }
	}
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する
const getObjectAbort = getObject.abort(); // リクエストを中止する

Promiseの使用

copy
// Promiseの使用
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
 'range': '0-2000' // オブジェクトのバイト単位の開始・終了範囲,
	'signed': true, // 署名付きURLを使用してバケットからオブジェクトを取得することを宣言する
	'signedUrlFn' : (functionData) => {
		return new Promise((resolve, reject) => {
		console.log("Data : " + functionData);
         // ファンクションロジック
     resolve({
			"signed_url" : "" 
		})
		})
	}
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する
const getObjectAbort = getObject.abort(); // リクエストを中止する

オプション付きSignedURLの使用

以下のSDKメソッドを使用すると、署名付きURLを使用してオブジェクトをダウンロードし、署名付きURLの有効期限を設定できます。

copy
// 署名付きURLと有効期限を使用したオブジェクトのダウンロード
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
 'range': '0-2000' // オブジェクトのバイト単位の開始・終了範囲,
	'signed': true, // 署名付きURLを使用してバケットからオブジェクトを取得することを宣言する
	'signedUrlFn' : async (functionData) => {
	console.log("Data : " + functionData);
       // ファンクションロジック
      return {
 "signed_url": "" // 署名付きURL
      }
	},
	"expiryInSeconds" : 3000 // 秒単位
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する
const getObjectAbort = getObject.abort(); // リクエストを中止する

キャッシュURLを使用したキャッシュオブジェクトのダウンロード

以下のSDKメソッドを使用すると、キャッシュURLを使用してキャッシュオブジェクトをダウンロードできます。

copy
// キャッシュURL
const processCallback = () => {
	// オブジェクトの取得中に実行する関数
	console.log("Downloading Object");
}
const options = {
 'range': '0-2000' // オブジェクトのバイト単位の開始・終了範囲,
	'cached': true, // キャッシュURLを使用してバケットからオブジェクトを取得することを宣言する
}
const getObject = await stratus.getObject("key", options, processCallback);
const getObjectStart = getObject.start(); // リクエストを開始する
const getObjectAbort = getObject.abort(); // リクエストを中止する

最終更新日 2026-02-23 18:09:41 +0530 IST