Chamar um método de API com uma payload compactada no API Gateway
Para fazer uma solicitação da API com uma carga compactada, o cliente deve definir o cabeçalho Content-Encoding
com uma das codificações de conteúdo compatíveis.
Suponha que você seja um cliente de API e queira chamar o método de API PetStore (POST
/pets
). Não chame o método usando esta saída JSON:
POST /pets Host: {petstore-api-id}.execute-api.{region}.amazonaws.com Content-Length: ... { "type": "dog", "price": 249.99 }
Em vez disso, você pode chamar o método com a mesma carga compactada usando a codificação 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
Quando o API Gateway recebe a solicitação, ele verifica se a codificação de conteúdo especificada é compatível. Em seguida, ele tenta descompactar a carga com a codificação de conteúdo especificada. Se a descompactação for bem-sucedida, ele enviará a solicitação para o endpoint de integração. Se a codificação especificada não for compatível ou a carga fornecida não estiver compactada, o API Gateway retornará uma resposta com o erro 415 Unsupported Media
Type
. O erro não será registrado em log no CloudWatch Logs se ele ocorrer na fase inicial de descompactação antes de sua API e etapa serem identificadas.