Portada » Crear un API de backend con Express.js y su despliegue en AWS Lambda y API Gateway
Código de ejemplo de una aplicación de Express.js

Crear un API de backend con Express.js y su despliegue en AWS Lambda y API Gateway

En este artículo se explicará paso a paso cómo crear un API de backend con Express.js, cómo probarlo en local y cómo conectarlo a un repositorio GitHub.

También se describirá cómo desplegar este API en Amazon Web Services utilizando su servicio de Lambda Functions y API Gateway.

Saber crear un API de backend con Express.js es una tarea esencial para muchos proyectos de desarrollo web. La implementación de este tipo de API permite a los desarrolladores de front-end obtener y manipular datos desde una base de datos o una fuente externa. En este artículo, se explicará cómo crear un API de backend utilizando Express.js, cómo probarlo en local y cómo conectarlo a un repositorio GitHub. Además, se mostrará cómo desplegar este API en Amazon Web Services utilizando su servicio de Lambda Functions y API Gateway.

Paso 1: Crear un proyecto con Express.js

Para comenzar a crear nuestro API de backend, necesitamos crear un proyecto con Express.js. Para hacer esto, abra la terminal y ejecute el siguiente comando:

npm init

Este comando creará un archivo package.json en el directorio de su proyecto. Luego, instale Express.js con el siguiente comando:

npm install express --save

Una vez que haya instalado Express.js, puede crear su archivo principal de servidor. Cree un archivo llamado server.js y agregue el siguiente código:

const express = require('express');
const app = express();
app.get('/', (req, res) => {
    res.send('¡Hola mundo!');
});
app.listen(3000, () => {
    console.log('Servidor iniciado en http://localhost:3000');
});

Este código crea una instancia de Express.js, define una ruta raíz y luego inicia el servidor en el puerto 3000.

Paso 2: Probar el API en local

Una vez que haya creado su archivo de servidor, puede probarlo en local. Para hacer esto, abra la terminal y ejecute el siguiente comando:

node server.js

Este comando iniciará su servidor en la terminal. Luego, abra su navegador web y vaya a http://localhost:3000. Debería ver el mensaje «¡Hola mundo!».

Paso 3: Conectar el repositorio GitHub

Para conectar su proyecto a un repositorio GitHub, primero necesita crear un repositorio vacío en GitHub. Luego, abra la terminal y ejecute los siguientes comandos:

git init git add.git commit - m "Primer commit"
git remote add origin < URL del repositorio GitHub > git push - u origin master

Estos comandos inicializan un repositorio Git en su proyecto, agregan todos los archivos, realizan un commit con un mensaje y luego conectan su repositorio local a su repositorio GitHub. Ahora puede realizar cambios en su proyecto y subirlos a su repositorio GitHub utilizando los comandos de Git.

Paso 4: Desplegar el API en AWS Lambda y API Gateway

Para desplegar su API en Amazon Web Services, necesita crear una función Lambda y un API Gateway. Para hacer esto, siga los siguientes pasos:

Cree una función Lambda en la consola de AWS Lambda. Seleccione «Node.js 14.x» como el tiempo de ejecución y «Autor desde cero» como la opción de autorización. Asegúrese de crear una nueva función de ejecución.

Cree un nuevo API Gateway en la consola de AWS API Gateway. Seleccione «REST API» como el tipo de API y «Nuevo API» como la opción de creación.

Cree un recurso en su API Gateway y luego cree un método GET debajo de ese recurso. Configure el método GET para que use la función Lambda que creó anteriormente como la integración.

Despliegue su API Gateway y obtenga la URL de su API. Esta será la URL que usará para realizar solicitudes a su API desde su aplicación.

Configure su función Lambda para aceptar solicitudes desde su API Gateway. Para hacer esto, agregue el siguiente código al archivo de su función Lambda:

exports.handler = async (event) => {
    const response = {
        statusCode: 200,
        headers: {
            "Content-Type": "application/json"
        },
        body: JSON.stringify({
            message: "¡Hola mundo!"
        })
    };
    return response;
};

Este código configura su función Lambda para devolver una respuesta JSON con el mensaje «¡Hola mundo!» cuando se llama.

Pruebe su API haciendo una solicitud GET a la URL de su API Gateway. Debería recibir una respuesta JSON con el mensaje «¡Hola mundo!».

Si el API está funcionando correctamente, sustituya el fichero index.js de prueba que ha utilizado por el proyecto de express que tiene creado en local. Se puede subir mediante ZIP a la lambda función. Más adelante veremos como esto puede hacerlo mediante integración continua.Simplemente pusheando a su repositorio github, su lambda function se actualizará.

Conclusión

En este artículo, hemos aprendido cómo crear un API de backend utilizando Express.js, cómo probarlo en local y cómo conectarlo a un repositorio GitHub. También hemos visto cómo desplegar este API en Amazon Web Services utilizando su servicio de Lambda Functions y API Gateway. Este proceso puede parecer complicado al principio, pero una vez que tenga todo configurado, desplegar su API en la nube es fácil y rápido. Si bien este artículo se centró en Express.js y AWS Lambda, estos conceptos se pueden aplicar a cualquier tecnología de backend y cualquier proveedor de servicios en la nube.

Entradas relacionadas