コンテンツにスキップ

メソッド

Assets APIには、Get an imageとGet any assetの2つのメソッドがあります。どちらもHTTP GETで呼び出し、アセットのバイナリデータを返します。

メソッド一覧

メソッドパス取得対象
Get an image/beta/cms/assets/image画像アセット
Get any asset/beta/cms/assets/asset画像や動画など、任意のアセット

各メソッドのパラメータの詳細は、Craft Cross CMSのAPIリファレンスを参照してください。

メソッドの使い分け

取得するアセットの種類や用途に応じて、2つのメソッドを使い分けます。

  • Get an imageは画像専用です。画像以外のアセットのIDを指定すると取得できません。画像の配信はFastly Image Optimizerを経由するため、配信用URLにクエリパラメータを付与して、リサイズやフォーマット変換を行えます。画像変換の詳細は、クエリのページを参照してください
  • Get any assetは、動画を含む任意のアセットを取得します。動画など画像以外のアセットは、こちらを使います。Range Requestに対応しているため、ファイルを分割して取得でき、大容量ファイルの配信や動画のシーク再生に向きます

画像変換には、Fastly Image Optimizer側の入力上限(最大ファイルサイズ50MB、最大12,000×12,000px)があります。最新の制限値は、Fastlyの公式ドキュメントを参照してください。

Get an image

画像アセットを取得します。apiKeyimageId をクエリパラメータで指定します。

  • apiKey: 対象プロジェクトのAPIキー(必須)
  • imageId: 取得する画像アセットのID(必須)

レスポンスは画像のバイナリデータで、Content-Type ヘッダーに画像のMIMEタイプ(image/png など)が入ります。

Get any asset

画像や動画など、任意のアセットを取得します。apiKeyassetId をクエリパラメータで指定します。

  • apiKey: 対象プロジェクトのAPIキー(必須)
  • assetId: 取得するアセットのID(必須)

レスポンスはアセットのバイナリデータで、Content-Type ヘッダーにアセットのMIMEタイプ(video/mp4 など)が入ります。動画など大きなファイルを部分的に取得するための、Range Requestに対応します。

Range Request

Get any assetは、HTTPのRangeリクエストに対応します。Range ヘッダーで取得する範囲を指定すると、その範囲のバイナリデータだけを返します。動画のシーク再生や、大きなファイルの分割ダウンロードに利用できます。

  • Range ヘッダーを指定しない場合は、ステータスコード200でファイル全体を返します
  • Range ヘッダーで範囲を指定した場合は、ステータスコード206でその範囲のデータを返し、Content-Range ヘッダーに返却した範囲と全体のサイズを示します
  • 指定した範囲がファイルのサイズを超えるなど不正な場合は、ステータスコード416を返します

Get an imageはRangeリクエストに対応していません。常にファイル全体を返します。