Configurar uma integração de proxy HTTP com streaming de resposta de carga útil no API Gateway
Ao configurar o streaming de carga útil de resposta, você especifica o modo de transferência de resposta na solicitação de integração do seu método. Você precisa definir essas configurações na solicitação de integração a fim de controlar como o API Gateway se comporta antes e durante a resposta de integração. Quando você utiliza o streaming de resposta, pode configurar o tempo limite de integração como até 15 minutos.
Quando você usa o streaming de resposta de carga útil com uma integração HTTP_PROXY, o API Gateway não envia o código de status da resposta HTTP nem o cabeçalho de resposta HTTP até receber integralmente todos os cabeçalhos.
Configurar uma integração de proxy HTTP com streaming de resposta de carga útil
O procedimento a seguir mostra como importar uma nova API com o responseTransferMode definido como STREAM. Se você tiver uma API de integração existente e quiser modificar o responseTransferMode, consulte Atualizar o modo de transferência de resposta para uma integração de proxy HTTP.
- Console de gerenciamento da AWS
-
Como configurar uma integração de proxy HTTP com streaming de resposta de carga útil
-
Inicie uma sessão no console do API Gateway em https://console.aws.amazon.com/apigateway.
Escolha uma API REST.
Selecione Criar recurso.
Em Resource Name (Nome do recurso), insira streaming.
Selecione Criar recurso.
Com o recurso /streaming selecionado, escolha Criar método.
Em Tipo de método, selecione ANY.
Em Tipo de integração, escolha HTTP.
Selecione Integração de proxy HTTP.
Em Modo de transferência de resposta, selecione Fluxo.
Em Método HTTP, escolha um método.
-
Em URL do endpoint, insira um endpoint de integração. Escolha um endpoint que produza uma grande carga útil para ser transmitida de volta para você.
Escolha Criar método.
Depois de criar o método, implante a API.
Para implantar sua API
Escolha Implantar API.
Em Estágio, selecione Novo estágio.
Em Stage name (Nome do estágio), insira prod.
(Opcional) Em Description (Descrição), insira uma descrição.
Escolha Implantar.
- AWS CLI
-
Como criar uma API com streaming de resposta de carga útil
-
Copie o arquivo Open API a seguir e, depois, salve-o como ResponseStreamDemoSwagger.yaml. Nesse arquivo, responseTransferMode está definido como STREAM. O endpoint de integração está definido como https://example.com, mas recomendamos que você o modifique para um endpoint que produza uma grande carga útil a ser transmitida de volta para você.
openapi: "3.0.1"
info:
title: "ResponseStreamingDemo"
version: "2025-04-28T17:28:25Z"
servers:
- url: "{basePath}"
variables:
basePath:
default: "prod"
paths:
/streaming:
get:
x-amazon-apigateway-integration:
httpMethod: "GET"
uri: "https://example.com"
type: "http_proxy"
timeoutInMillis: 900000
responseTransferMode: "STREAM"
Utilize o seguinte comando import-rest-api para importar sua definição de OpenAPI:
aws apigateway import-rest-api \
--body 'fileb://~/ResponseStreamDemoSwagger.yaml' \
--parameters endpointConfigurationTypes=REGIONAL \
--region us-west-1
Utilize o seguinte comando create-deployment para implantar a nova API em um estágio:
aws apigateway create-deployment \
--rest-api-id a1b2c3 \
--stage-name prod \
--region us-west-1
Atualizar o modo de transferência de resposta para uma integração de proxy HTTP
O procedimento a seguir mostra como atualizar o modo de transferência de resposta para uma integração de proxy HTTP.
- Console de gerenciamento da AWS
-
Como atualizar o modo de transferência de resposta para uma integração de proxy HTTP
-
Inicie uma sessão no console do API Gateway em https://console.aws.amazon.com/apigateway.
Escolha uma API REST.
Escolha um método.
Na guia Solicitação de integração, em Configurações de solicitação de integração, selecione Editar.
Em Modo de transferência de resposta, selecione Fluxo.
Escolha Salvar.
Depois de atualizar o método, implante a API.
Para implantar sua API
Escolha Implantar API.
Em Estágio, selecione Novo estágio.
Em Stage name (Nome do estágio), insira prod.
(Opcional) Em Description (Descrição), insira uma descrição.
Escolha Implantar.
- AWS CLI
-
O comando update-integration a seguir atualiza o modo de transferência de uma integração de BUFFERED para STREAM. Para todas as APIs existentes, o modo de transferência de resposta para todas as integrações está definido como BUFFERED.
aws apigateway update-integration \
--rest-api-id a1b2c3 \
--resource-id aaa111 \
--http-method GET \
--patch-operations "op='replace',path='/responseTransferMode',value=STREAM" \
--region us-west-1
Será necessário implantar a API novamente para que as alterações sejam implementadas. Se você personalizou o tempo limite de integração, esse valor de tempo limite será removido, pois o API Gateway transmite sua resposta por até 5 minutos.
O seguinte comando update-integration atualiza o modo de transferência de uma integração de STREAM para BUFFERED.
aws apigateway update-integration \
--rest-api-id a1b2c3 \
--resource-id aaa111 \
--http-method GET \
--patch-operations "op='replace',path='/responseTransferMode',value=BUFFERED" \
--region us-west-1
Será necessário implantar a API novamente para que as alterações sejam implementadas.