Manejar rutas en Nodejs es clave para construir servicios web robustos y eficientes. En esta guía paso a paso, exploraremos las mejores prácticas para configurar y gestionar rutas en tu proyecto Node.js, desde la configuración inicial hasta estrategias avanzadas para mantener un código limpio y fácil de mantener.
Crea un nuevo proyecto Node.js utilizando npm e instala las dependencias necesarias, como Express, una biblioteca popular para el manejo de rutas, si necesitas una guía te dejo este link
https://tenocode.com/crear-un-nuevo-proyecto-con-nodejs/
Estructura del proyecto
Organiza tu proyecto de manera lógica. Utiliza una estructura de carpetas clara, separando las rutas en módulos según su funcionalidad. Por ejemplo:
- /src
- /routes
- index.js //archivo principal que leerá todos los archivos de rutas
- user.js
- products.js
- app.js
Configuración de Express
Configura tu aplicación Express en el archivo app.js o equivalente, e indica que usaras la carpeta routes para tus rutas, entonces debería quedar algo asi:
require("dotenv").config();
const cors = require('cors');
const express = require('express');
const port = process.env.PORT || 3000;
const app = express();
app.use(cors());
//le indicas que usaras la carpeta rutas y
//que tu prefijo global de rutas será http://localhost:3000/api/**
//donde ** serán las rutas que iras creando
app.use("/api",require("./routes/"));
app.listen(port, () => {
console.log(`Servidor Express iniciado en ${process.env.URL_SITE}:${port}`);
});
Dentro de tu carpeta rutas crea un index.js, el cual leerá? todos tus archivos de rutas
const express = require('express');
const fs = require('fs');
const router = express.Router();
const PAHT_ROUTES = __dirname;
const removeExtension = (fileName) =>{
return fileName.split(".").shift();
}
fs.readdirSync(PAHT_ROUTES).filter((file)=>{
const name = removeExtension(file)
//lee tus archivos a excepcion del index.js
if(name!=='index'){
router.use(`/${name}`,require(`./${file}`));
}
});
module.exports = router;
Ahora puedes ir creando tranquilamente tus archivos de rutas en nodejs, sin necesidad de hacer alguna otra configuración para que tu proyecto las reconozca. Ten en cuenta que el nombre del archivo será el path que viene despues de api, si creamos un user.js en routes, la url para acceder a estos recursos sería: localhost:3000/api/user, por lo que deberemos poner todas las operaciones o rutas que tengan el path api/user/**
const express = require('express');
const router = express.Router();
//localhost:3000/api/user
router.get('/:id',(req, res) => {
// Obtiene el id de usuario por parámetro de la URL
const id = req.params.id;
if (!id) {
return res.status(400).send('id de usuario no proporcionado');
}
res.send({'msg':'ok'});
});
module.exports = router;
Has aprendido las mejores prácticas para configurar y gestionar rutas en un proyecto Node.js. Esta guía proporciona una base sólida para construir APIs eficientes y mantenibles. ¡Explora y experimenta para adaptar estas prácticas a las necesidades específicas de tu proyecto!
