Configuración de una integración de proxy HTTP con transmisión de respuesta de carga útil en API Gateway - Amazon API Gateway

Configuración de una integración de proxy HTTP con transmisión de respuesta de carga útil en API Gateway

Cuando configura la transmisión de la carga útil de respuesta, especifica el modo de transferencia de respuesta en la solicitud de integración del método. Estos ajustes se configuran en la solicitud de integración para controlar el comportamiento de API Gateway antes y durante la respuesta de integración. Cuando utiliza la transmisión de respuestas, puede configurar el tiempo de espera de la integración en un máximo de 15 minutos.

Cuando utiliza la transmisión de respuestas de carga útil con una integración de HTTP_PROXY, API Gateway no enviará el código de estado de respuesta HTTP ni ningún encabezado de respuesta HTTP hasta que reciba todos los encabezados por completo.

Creación de una integración de proxy HTTP con transmisión de respuesta de carga útil

El siguiente procedimiento muestra cómo importar una nueva API con el valor responseTransferMode establecido en STREAM. Si tiene una API de integración existente y desea modificar responseTransferMode, consulte Actualización del modo de transferencia de respuestas para una integración de proxy HTTP.

Consola de administración de AWS
Creación de una integración de proxy HTTP con transmisión de respuesta de carga útil
  1. Inicie sesión en la consola de API Gateway en https://console.aws.amazon.com/apigateway.

  2. Elija una API de REST.

  3. Elija Crear recurso.

  4. En Nombre del recurso, escriba streaming.

  5. Elija Crear recurso.

  6. Con el recurso /streaming seleccionado, elija Crear método.

  7. En Tipo de método, elija CUALQUIERA.

  8. Para Tipo de integración, elija HTTP.

  9. Elija Integración de proxy HTTP.

  10. Para el modo de transferencia de respuesta, elija Flujo.

  11. Para el método HTTP, elige un método.

  12. Para URL del punto de conexión, ingrese un punto de conexión de integración. Asegúrese de elegir un punto de conexión que genere una gran carga útil para que se la transmita.

  13. Elija Crear método.

Después de crear el método, implemente la API.

Para implementar su API
  1. Elija Implementar API.

  2. En Etapa, seleccione Nueva etapa.

  3. En Stage name (Nombre de etapa), escriba prod.

  4. (Opcional) En Description (Descripción), introduzca una descripción.

  5. Elija Implementar.

AWS CLI
Creación de una nueva API con transmisión de respuesta de carga útil
  1. Copie el siguiente archivo de API abierto y guárdelo como ResponseStreamDemoSwagger.yaml. En este archivo, responseTransferMode se establece en STREAM. El punto de conexión de integración está configurado en https://example.com, pero le recomendamos que lo modifique por un punto de conexión que genere una gran carga útil para que se la transmita.

    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"
  2. Use el comando import-rest-api siguiente para importar la definición de OpenAPI:

    aws apigateway import-rest-api \ --body 'fileb://~/ResponseStreamDemoSwagger.yaml' \ --parameters endpointConfigurationTypes=REGIONAL \ --region us-west-1
  3. Use el comando create-deployment siguiente para implementar la nueva API en una etapa:

    aws apigateway create-deployment \ --rest-api-id a1b2c3 \ --stage-name prod \ --region us-west-1

Actualización del modo de transferencia de respuestas para una integración de proxy HTTP

El procedimiento siguiente muestra cómo actualizar el modo de transferencia de respuestas para una integración de proxy HTTP.

Consola de administración de AWS
Actualización del modo de transferencia de respuestas para una integración de proxy HTTP
  1. Inicie sesión en la consola de API Gateway en https://console.aws.amazon.com/apigateway.

  2. Elija una API de REST.

  3. Elija un método.

  4. En la pestaña Solicitud de integración, en Configuración de la solicitud de integración, seleccione Editar.

  5. Para el modo de transferencia de respuesta, elija Flujo.

  6. Seleccione Save.

Después de actualizar el método, implemente la API.

Para implementar su API
  1. Elija Implementar API.

  2. En Etapa, seleccione Nueva etapa.

  3. En Stage name (Nombre de etapa), escriba prod.

  4. (Opcional) En Description (Descripción), introduzca una descripción.

  5. Elija Implementar.

AWS CLI

El comando update-integration siguiente actualiza el modo de transferencia de una integración de BUFFERED a STREAM. Para cualquier API existente, el modo de transferencia de respuesta para todas las integraciones se establece en 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

Tiene que volver a implementar la API para que los cambios surtan efecto. Si personalizó el tiempo de espera de la integración, este valor de tiempo de espera se elimina, ya que API Gateway transmite la respuesta durante un máximo de 5 minutos.

El comando update-integration siguiente actualiza el modo de transferencia de una integración de STREAM a 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

Tiene que volver a implementar la API para que los cambios surtan efecto.