Express.js es un framework web para Node.js que facilita la creación y el manejo de aplicaciones web y APIs.
Configuración
npm init -y
npm install express
npm install nodemon eslint eslint-config-prettier eslint-plugin-prettier prettier -D
npx eslint --init
{
"parserOptions": {
"ecmaVersion": 2018
},
"extends": ["eslint:recommended", "prettier"],
"env": {
"es6": true,
"node": true,
"jest": true
},
"rules": {
"no-console": "warn"
}
}
{
"name": "mi-proyecto-express",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js",
"lint": "eslint .",
"format": "prettier --write ."
},
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.17.1"
},
"devDependencies": {
"nodemon": "^2.0.7",
"eslint": "^7.22.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-prettier": "^3.3.1",
"prettier": "^2.2.1"
}
}
Iniciar mi primer servidor
// es una llamada a la función require de Node.js que carga el módulo Express en nuestra aplicaciónconst express = require('express')
//estamos creando una instancia de la aplicación Expressconst app = express()
// Definimos una constante port que almacena el número de puerto en el que nuestro servidor escuchará las solicitudesconst port = 3000/*
Esta línea define una ruta para manejar solicitudes GET a la raíz del sitio
- Toma dos argumentos:
1. La ruta (`'/'`).
2. Una función de callback que se ejecuta cuando se recibe una solicitud GET en esa ruta.
- La función de callback tiene dos parámetros:
- `req` (request): El objeto de la solicitud, que contiene información sobre la solicitud HTTP.
- `res` (response): El objeto de la respuesta, que se utiliza para enviar una respuesta al cliente.
Dentro de la función de callback, utilizamos res.send('Hello World!') para enviar la cadena de texto "Hello World!" como respuesta al cliente.
*/
app.get('/', (req, res) => {
res.send('Hello World!')
})
/*
Iniciar el Servidor:
app.listen() inicia el servidor y hace que nuestra aplicación escuche las solicitudes en el puerto especificado.
Toma dos argumentos:
El puerto en el que el servidor escuchará las solicitudes (port).
Una función de callback que se ejecuta cuando el servidor comienza a escuchar.
*/
app.listen(port, () => {
console.log(`Servidor corriendo en http://localhost:${port}`)
})
Conceptos básicos
Middleware:
express.static
).body-parser
).req
y res
.next()
para pasar el control al siguiente middleware.Rutas: Las rutas definen cómo una aplicación responde a una solicitud del cliente en un endpoint particular, que es una URI (o ruta) y un método de solicitud HTTP específico (GET, POST, etc.).
Controladores: Son funciones que se encargan de manejar la lógica para una ruta específica. Separar la lógica del controlador de la definición de la ruta ayuda a mantener el código organizado y fácil de mantener.