Cómo activar AWS Lambda usando API Gateway

Cómo activar AWS Lambda usando API Gateway

Al igual que algunos otros servicios de AWS, "API Gateway" también puede activar e invocar las funciones de AWS Lambda. Esto se hace conectando estos dos servicios, yo.mi., AWS Lambda y API Gateway, a través de algunas configuraciones. Los desencadenantes de cualquier servicio de AWS se agregan a través de la opción "Agregar disparador" presente en la consola AWS Lambda.

En esta publicación, discutiremos cómo activar la función lambda directamente a través de la consola Lambda y también creando una nueva API en el servicio de puerta de enlace API.

Cómo activar AWS Lambda usando API Gateway?

Para activar la función Lambda utilizando el servicio API Gateway de AWS, el usuario necesita configurar algunas configuraciones en ambos servicios. Comencemos con el proceso.

Requisito previo: Crear una función Lambda

Inicie sesión en la consola de gestión de AWS y luego busque AWS Lambda en los servicios de AWS. Después de abrir la consola AWS Lambda, haga clic en el botón "Crear función" presente en la primera interfaz:

Para esta publicación, estamos seleccionando el método de creación como "autor desde cero". Nombre la función y defina un lenguaje de tiempo de ejecución para la función Lambda en la que el código se ejecutará en AWS Lambda:

Seleccione la arquitectura y luego haga clic en el botón "Crear función":

Método 1: Creación de API directamente a través de AWS Lambda

Después de crear la función Lambda, habrá una opción "Agregar disparador" en los detalles de la función Lambda creada. Simplemente haga clic en eso:

Busque la "puerta de enlace API" en la configuración de activación y seleccione:

Esto mostrará instantáneamente un formulario de configuración. Para crear directamente una nueva API sin visitar la puerta de enlace API por separado, simplemente seleccione la opción "Crear una nueva API" y luego seleccione "API HTTP" como tipo API. También discutiremos el otro método más adelante en este artículo.

Haga clic en el botón "Agregar", y esto agregará la API para activar la función Lambda:

Habrá una "puerta de enlace API" que se muestra en los detalles de la función Lambda:

Desplácese hacia abajo hasta la sección "Código" de la función Lambda. Habrá un código predeterminado escrito en el lenguaje de programación seleccionado al crear la función Lambda. Aquí, muestra un código de Python. Ahora, para ver su ejecución, usaremos el disparador de puerta de enlace API:

En la sección "desencadenantes" de la función Lambda en la consola Lambda de AWS, habrá un punto final API en forma de URL: simplemente abra el enlace:

Esto ejecutará la función lambda y mostrará la salida en el navegador web:

En el servicio API Gateway, la API creada automáticamente al activar la función Lambda a través del servicio API Gateway se mostrará:

Método 2: Creación de API en API Gateway

Busque la puerta de enlace API en los servicios de AWS y abra la consola de la puerta de enlace API:

Haga clic en el botón "Crear API" en la primera interfaz y luego haga clic en el botón "construido" de la "API REST":

Ahora, como se requiere para crear una API REST, haga clic en la opción "REST" y luego seleccione "Crear una nueva API". Después de eso, nombra la API y agregue una descripción:

Haga clic en el botón "Crear API":

De esta manera, la API se ha creado a través de configuraciones manuales.

Crear un recurso de descanso

Ahora, se supone que el usuario crea un recurso REST para la API creada. Para hacer eso, haga clic en las "acciones" en la consola de la puerta de enlace API y luego seleccione la opción "Crear recurso":

Nombra el recurso y luego simplemente haga clic en "Crear botón de recursos. Esto creará el recurso para la API:

Crear método de Invoke

Ahora, se requiere crear un método de invocación según el cual se activará la función lambda. Abra el menú desplegable "Acciones" nuevamente y desde allí, seleccione la opción "Crear método":

Para esta publicación, seleccionamos el método "Get":

Otorgar permiso para invocar la función lambda

Ahora, conecte la API creada a la función Lambda que se supone que invoca o dispara. Simplemente haga clic en la "función lambda" como tipo de integración y luego agregue la función lambda creada al espacio dado para la "función lambda":

Esto mostrará un asistente para confirmar dar permiso a la puerta de enlace de la API para invocar la función lambda seleccionada. Haga clic en Aceptar":

Implementar API

Es importante implementar la API para ver su resultado. Seleccione la opción "Implementar API" en el menú desplegable "Acciones":

Haga clic en "Implementar" después de agregar un nombre artístico y una descripción:

Haga clic en el método creado en el menú lateral. El método que creamos fue "obtener", haga clic en él para abrirlo:

Habrá una "URL de invocación". Simplemente haga clic en el enlace URL para abrirlo y ver los resultados de Invok:

Esto abrirá el enlace en el navegador web y mostrará la salida del código de Python presente en la función Lambda seleccionada mientras da el permiso de la API y el acceso a la función:

Esta fue una descripción completa de cómo activar la función AWS Lambda utilizando el servicio API Gateway de AWS.

Conclusión

La función AWS Lambda se puede activar e invocarse utilizando el servicio API Gateway de AWS creando primero una función en la consola AWS Lambda y luego creando la puerta de enlace API, recursos e invocación del método, y luego otorgando el acceso a la puerta de enlace API creado al seleccionado función lambda. La API creada se puede implementar para ver los resultados cuando se invoca la función Lambda.