メニュー
Amazon API Gateway
開発者ガイド

API の圧縮を有効にする

API Gateway コンソール、AWS CLI/SDK、または API Gateway REST API を使用して API の圧縮を有効にできます。ステップについては、以降のセクションで説明します。

既存の API では、圧縮を有効にした後、API をデプロイして変更を有効にする必要があります。新しい API の場合、API のセットアップ完了後に API をデプロイします。

API Gateway コンソールを使用して API の圧縮を有効にする

次の手順では、API のペイロードの圧縮を有効にする方法について説明します。

API Gateway コンソールを使用してペイロードの圧縮を有効にするには

  1. API Gateway コンソールにサインインします。

  2. 既存の API を選択するか、新しい API を作成します。

  3. プライマリナビゲーションペインで、選択した、または作成した API の下で [Settings] を選択します。

  4. [Settings] ペインの [Content Encoding] セクションで、[Content Encoding enabled] オプションを選択してペイロードの圧縮を有効にします。圧縮に必要な本文の最小サイズの横にある最小圧縮サイズ (バイト単位) の数を入力します。圧縮を無効にするには、[Content Encoding enabled] オプションをオフにします。

  5. [Save Changes] を選択します。

AWS CLI を使用して API の圧縮を有効にする

AWS CLI を使用して、新しい API を作成し、圧縮を有効にするには、次のように create-rest-api コマンドを呼び出します。

aws apigateway create-rest-api \ --name "My test API" \ --minimumCompressionSize 0

AWS CLI を使用して、既存の API で圧縮を有効にするには、次のように update-rest-api コマンドを呼び出します。

aws apigateway update-rest-api \ --rest-api-id 1234567890 \ --patch-operations op=replace,path=/minimumCompressionSize,value=0

The minimumCompressionSize property has a non-negative integer value between 0 and 10485760 (10M bytes). It measures the compression threshold. If the payload size is smaller than this value, compression or decompression are not applied on the payload. Setting it to zero allows compression for any payload size.

AWS CLI を使用して、圧縮を無効にするには、次のように update-rest-api コマンドを呼び出します。

aws apigateway update-rest-api \ --rest-api-id 1234567890 \ --patch-operations op=replace,path=/minimumCompressionSize,value=

You can also set value to an empty string "" or omit the value property altogether in the preceding call.

API Gateway REST API を使用して API の圧縮を有効にする

API Gateway REST API を使用して新しい API の圧縮を有効にするには、次のように restapi:create を呼び出します。

POST /restapis Host: apigateway.{region}.amazonaws.com Authorization: apigateway.{region}.amazonaws.com Content-Type: application/json Content-Length: ... { "name" : "My test API", "minimumCompressionSize": 0 }

API Gateway REST API を使用して既存の API の圧縮を有効にするには、次のように restapi:update を呼び出します。

PATCH /restapis/{restapi_id} Host: apigateway.{region}.amazonaws.com Authorization: ... Content-Type: application/json Content-Length: ... { "patchOperations" : [ { "op" : "replace", "path" : "/minimumCompressionSize", "value" : "0" } ] }

The minimumCompressionSize property has a non-negative integer value between 0 and 10485760 (10M bytes). It measures the compression threshold. If the payload size is smaller than this value, compression or decompression are not applied on the payload. Setting it to zero allows compression for any payload size.

API GatewayREST API を使用して圧縮を無効にするには、次のように restapi:update を呼び出します。

PATCH /restapis/{restapi_id} Host: apigateway.{region}.amazonaws.com Authorization: ... Content-Type: application/json Content-Length: ... { "patchOperations" : [ { "op" : "replace", "path" : "/minimumCompressionSize" } ] }

You can also set value to an empty string "" or omit the value property altogether in the preceding call.

API Gateway でサポートされるコンテンツコーディング

API Gateway は、次のコンテンツコーディングをサポートしています。

  • deflate

  • gzip

  • identity

API Gateway は RFC 7231 仕様に従って、Accept-Encoding ヘッダー形式もサポートしています。

  • Accept-Encoding:deflate,gzip

  • Accept-Encoding:

  • Accept-Encoding:*

  • Accept-Encoding:deflate;q=0.5,gzip=1.0

  • Accept-Encoding:gzip;q=1.0,identity;q=0.5,*;q=0