Express

Instalar Express

Lo primero que tienes que hacer es crear un nuevo proyecto. Para ello, accede a tu directorio de proyectos, -en mi caso utilizo ~/code-, y genera un nuevo proyecto utilizando NPM:

mkdir <my-project> && cd <my-project>
npm init

Al ejecutar este último comando tendrás que contestar algunas preguntas acerca del proyecto.

Ahora, instala Express, y crea un nuevo archivo index.js en la raíz del proyecto.

npm install -S express

En el archivo que acabas de crear es donde vamos a importar Express para crear nuestra aplicación y después añadiremos nuestro primer route handler.

const express = require('express');
const app = express();

app.get('/', (req, res) => {
  res.send({
    hi: 'there',
  });
});

app.listen(5000);

CommonJS

Como podrás observar, para importar módulos vamos a utilizar el formato CommonJS, que es el único a día de hoy soportado por Node.js. Se trata básicamente de un sistema utilizado para importar y compartir código entre distintos archivos.

Otro sistema utilizado para importar módulos en JavaScript es ES6 modules, pero como hemos dicho, todavía no lo podemos utilizar en Node.js. Sin embargo, este será el sistema que utilizaremos siempre por defecto en librerías frontend de JavaScript como React o Vue.

Cómo funciona Express

Vamos a ver el funcionamiento general de Express basándonos en este diagrama:

Diagrama del funcionamiento de Express

Empezando por arriba, tenemos una petición del navegador que va a ser manejada por nuestra aplicación de Express, const app = express();.

Antes de llegar a los route handlers definidos, esta petición va a pasar primero por todos los middlewares que hayamos registrado.

Y finalmente, después de manejar la petición, -aquí es donde está toda la lógica y los accesos a la base de datos-, enviamos una respuesta al navegador.