¿Cómo puedo reenviar el encabezado del host con integración privada para una API de REST de API Gateway?

4 minutos de lectura
0

Quiero usar el valor del encabezado del host para mi punto de conexión o dominio personalizado de Amazon API Gateway. Quiero reenviar el encabezado del host con integración privada para una API de REST en API Gateway.

Descripción corta

Amazon API Gateway sobrescribe el valor de host que recibe en la solicitud original al punto de conexión de integración. En función de la URL del punto de conexión de la solicitud de integración, Amazon API Gateway asigna el valor de host.

Para usar el valor del encabezado de host de un punto de conexión de API Gateway en el backend, utilice el encabezado personalizado. Utilice el encabezado personalizado en la solicitud de integración que contiene el valor del encabezado del host de la solicitud.

Resolución

Creación de una API de REST en API Gateway

1.    Abra la consola de API Gateway.

2.    Elija Crear API.

O bien:

Si es la primera vez que utiliza API Gateway, aparecerá una página que le presentará el servicio. En API de REST, seleccione Crear. Cuando aparezca la ventana emergente Crear API de ejemplo, seleccione Aceptar.

3.    En Elija un tipo de API, en el panel API de REST, elija Crear.

4.    En Crear API nueva, seleccione API nueva.

5.    En Configuración, introduzca estos valores:
En Nombre de la API, introduzca un nombre que describa la finalidad de la API. Por ejemplo: ForwardHostHeader.
(Opcional) En Descripción, introduzca una breve descripción de la finalidad de la API. Por ejemplo, Reenviar el encabezado del host para una integración privada.
En Tipo de punto de conexión, elija Regional, Optimizado para límites o Privado.

6.    Elija Crear API.

Configuración de la solicitud de método y la solicitud de integración de la API

1.    Abra la consola de API Gateway.

2.    Siga las instrucciones para crear una API con integración privada mediante la consola de API Gateway.

3.    En Solicitud de método, agregue Encabezados de solicitud HTTP como host.

4.    En Solicitud de integración, amplíe Encabezados HTTP y escoja Agregar encabezado.

5.    Introduzca un nombre para el encabezado personalizado. Por ejemplo, my_host.

6.    En Mapeado de, introduzca la solicitud de método. Por ejemplo, method.request.header.host. A continuación, seleccione el icono de la marca de verificación.

Implementación de la API en una nueva etapa

1.    Abra la consola de API Gateway.

2.    Siga las instrucciones para implementar una API de REST en una etapa. Para obtener más información, consulte Configuración de una etapa con la consola de API Gateway.

3.    En el panel Editor de etapas, copie la URL de invocación al portapapeles. Use esta URL para invocar la API.

Ejemplo de URL de invocación de una API de REST:

https://1a2bc3d456.execute-api.us-east-1.amazonaws.com/stage

4.    Si utiliza un equilibrador de carga de aplicación para el backend, agregue una regla para probar la configuración. Elija «http header» como condición y, a continuación, especifique «my_host» como el mismo encabezado y valor que el valor del host de la API Gateway.

5.    Pegue la URL de la API Gateway en una ventana del navegador para invocarla. La configuración del encabezado «my_host» en la API Gateway reenvía el valor de dicho host al equilibrador de carga de aplicación. El equilibrador de carga de aplicación coincide con la condición establecida y, a continuación, devuelve la respuesta tal como se configuró.

Información relacionada

Configuración de mapeo de datos de solicitud y respuesta mediante la consola de API Gateway

Configuración de una API con la consola de API Gateway

Notas importantes de Amazon API Gateway

¿Cómo integro una API de REST de API Gateway con un equilibrador de carga de aplicación?

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 8 meses