使用压缩负载调用 API 方法 - Amazon API Gateway
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用压缩负载调用 API 方法

要使用压缩负载发出 API 请求,客户端必须使用支持的内容编码之一设置 Content-Encoding 标头。

假设您使用 API 客户端并希望调用 PetStore API 方法 (POST /pets)。不要使用以下 JSON 输出来调用方法:

POST /pets Host: {petstore-api-id}.execute-api.{region}.amazonaws.com Content-Length: ... { "type": "dog", "price": 249.99 }

相反,您可以通过使用 GZIP 编码压缩的相同负载来调用方法:

POST /pets Host: {petstore-api-id}.execute-api.{region}.amazonaws.com Content-Encoding:gzip Content-Length: ... ���RPP*�,HU�RPJ�OW��e&���L,�,-y�j

API Gateway 收到请求时,它会验证是否支持指定的内容编码。然后,它尝试解压缩具有指定内容编码的负载。如果解压缩成功,它会将请求分派到集成终端节点。如果不支持指定的编码或者提供的负载未使用指定编码压缩,API Gateway 返回 415 Unsupported Media Type 错误响应。如果此错误在解压缩的早期阶段发生(尚未确定您的 API 和阶段),则此错误不会记录到 CloudWatch Logs。