Curso de NodeJS | Crear un nuevo proyecto con express

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.

Express es un framework de NodeJS que tiene varias funcionalidades que simplifican la tarea de programar una aplicación web.

El autor original es TJ Holowaychuk y la primera versión se lanzó el 2010.

Anque es posible crear un template de express utilizando los siguientes comandos:

npm i express-generator --g
express proyecto --no-view 

Nosotros vamos a hacer un proyecto con lo mínimo, donde todo el código esté recogido en un único fichero.

Resolución paso a paso

Creación de un proyecto de NodeJS

Para usar Express, lo primera será crear un projecto de NodeJS. Para ello, ejecutaremos el siguiente comando:

npm init

Vamos a hacer alguna modificaciones en el fichero package.json generado. El fichero package.json contiene la configuración básica de un proyecto de NodeJs (nombre, versión, dependencias, etc.)

Añadiendo la siguiente propiedad al nodeJS haremos que en nuestro código podamos importar los módulos usando import en lugar de requiere, lo cual es una sintaxis más moderna.

"type": "module"

Añadiendo el siguiente script al package.json, haremos que podamos ejecutar nuestro fichero index.js de manera más cómoda, utilizando npm start en lugar de node ./index.js.

"scripts": {
    "start": "node ./index.js",
},

Configuración específica de express

Para nuestro proyecto de express, necesitaremos instalar las siguientes dependencias:

npm i express
npm i cors

Finalmente, el fichero index.js tendrá el siguiente código:

import express from "express";
import cors from "cors";
const port = process.env.PORT || 3000;
const app = express();
app.use(express.json());
app.use(cors());

app.get("/", (req, res) => {
  res.json("Success!");
});

app.listen(port, () => {
  console.log(`listening on port ${port}`);
});

nodemon

Si quieres que el proyecto se actualice constantemente cada vez que hagas algún cambio, puedes instalar el módulo nodemon:

npm i nodemon

Tras instalarlo, modificaremos el package.json:

"scripts":{
    "start": "nodemon .index.js"
}

Ejercicio rutas

Crear un nuevo proyecto con nodejs que implemente los siguientes enrutamientos:

  • / -> Muestra la traza con el texto inicio.
  • /libro -> Muestra una traza Llegamos a libro.
  • /user-init/Paco -> Muestra una traza con el texto hola [usuario], donde [usuario] es un valor que recibimos de la url.
  • /libro/alta -> Muestra la traza «formulario alta». La palabra libro será un nuevo fichero enrutador definido dentro de la carpeta routes.

Consulta a la base de datos

npm i sequelize

/index.js

const database = 'test';
const user = 'root';
const password = '';
const host = 'localhost';

 const sequelize = new Sequelize(database, user, password, {
    host,
    dialect: 'mysql',
    logging: console.log,
});

app.get("/", async (req, res) => {
  sequelize.query('INSERT INTO tabla(nombre) VALUES(:param1)', {
    replacements: { param1: 3 },
    type: sequelize.QueryTypes.INSERT
  })
  res.send("Registro insertado")
});

Por 9.99€ al mes tendrás acceso completo a todos los cursos. Sin matrícula ni permanencia.