¿Cómo configuro mi API de REST de API Gateway para pasar los parámetros de la cadena de consulta a una función de Lambda de backend o a un punto de conexión de HTTP?

4 minutos de lectura
0

Necesito mi API de REST de Amazon API Gateway para pasar los parámetros de la cadena de consulta a una función de AWS Lambda de backend y a un punto de conexión de HTTP.

Descripción breve

Para configurar una API de REST para pasar los parámetros de la cadena de consulta a una función de AWS Lambda de backend, utilice una integración personalizada de Lambda.

Para pasar los parámetros de la cadena de consulta a un punto de conexión de HTTP, utilice una integración personalizada de HTTP.

Importante: Asegúrese de proporcionar los datos de entrada como carga útil de la solicitud de integración. Se recomienda utilizar una plantilla de asignación para suministrar la carga útil. Para obtener más información, consulteAsignación de las cargas útiles de solicitudes y respuestas entre el método y la integración.

Resolución

Pasar parámetros de cadena de consulta a una función de Lambda del backend

1.    Abra la consola de API Gateway y, a continuación, seleccione su API.

2.    En el panel Recursos, seleccione el método HTTP configurado.

Nota: Si hay más de un método HTTP configurado para la API, repita los pasos del 2 a 15 para cada método.

3.    En el panel Ejecución de métodos, seleccione Solicitud de método.

4.    Expanda la lista desplegable de Parámetros de cadena de consulta de URL y, a continuación, seleccione Agregar cadena de consulta.

5.    En el campo Nombre, escriba mascota y, a continuación, seleccione el icono de marca de verificación.

6.    Seleccione la casilla Obligatorio.

7.    Seleccione el panel de Ejecución del método.

8.    Seleccione Solicitud de integración.

9.    Seleccione la lista desplegable de Plantillas de asignación y, a continuación, seleccione Agregar plantilla de asignación.

10.    Para el campo Tipo de contenido, escriba application/json y, a continuación, seleccione el icono de marca de verificación.

11.    En la ventana emergente que aparece, seleccione Sí, proteger esta integración.

12.    En Solicitar cuerpo de identificación, seleccione Cuando no haya plantillas definidas (recomendado).

13.    En el editor de plantillas de asignación, copie y reemplace el script existente por el siguiente código:

{
     "pet": "$input.params('pet')"
}

Nota: Para obtener más información, consulte las variables $input.

14.    Seleccione Guardar y, a continuación, seleccione Desplegar la API.

15.    Para probar el nuevo punto de conexión de la API, ejecute el siguiente comando curl:

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog

Importante: Asegúrese de que el comando curl tenga el parámetro de cadena de consulta mascota=perro.

Pasar parámetros de cadena de consulta a un punto de conexión de HTTP

1.    Abra la consola de API Gateway y, a continuación, seleccione su API.

2.    En el panel Recursos, seleccione el método HTTP configurado.

Nota: Si hay más de un método HTTP configurado para la API, repita los pasos del 2 al 10 para cada método.

3.    En el panel Ejecución de métodos, seleccione Solicitud de método.

4.    Expanda la lista desplegable de Parámetros de cadena de consulta de URL y, a continuación, seleccione Agregar cadena de consulta.

5.    En el campo Nombre, escriba tipo y, a continuación, seleccione el icono de marca de verificación.

6.    Seleccione el panel de Ejecución del método.

7.    Seleccione Solicitud de integración.

8.    Expanda la sección Parámetros de cadenas de consulta de URL.

Nota: De forma predeterminada, los parámetros de la cadena de consulta de solicitud de método se asignan a los parámetros de la cadena de consulta de solicitud de integración con el mismo nombre. Para ver esto, actualice la página de la consola de API Gateway. Para asignar un parámetro de solicitud de método a un parámetro de solicitud de integración diferente, primero elimine el parámetro de solicitud de integración existente. A continuación, añada una nueva cadena de consulta con la expresión de asignación de parámetros de solicitud de método deseada.

9.    Seleccione Guardar y, a continuación, seleccione Desplegar la API.

10.    Para probar el nuevo punto de conexión de la API, ejecute el siguiente comando curl:

curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog

Importante: Asegúrese de que el comando curl tenga el parámetro de cadena de consulta mascota=perro.


Información relacionada

Tutorial: Cree una API de REST de Hello World con la integración de proxy de Lambda

Tutorial: Cree una API de REST de API Gateway con integración sin proxy de Lambda

Tutorial: Cree una API de REST con integración de proxy de HTTP

Tutorial: Cree una API de REST con integración sin proxy de HTTP