En Express, un framework de Node.js, los parámetros se pueden pasar a las rutas GET para filtrar o personalizar las respuestas. Estos parámetros se pueden enviar mediante la URL y se obtienen dentro del controlador de la ruta.
En Express, los parámetros se pueden pasar de dos formas: parámetros de ruta y query strings. Los parámetros de ruta se definen en la URL y se capturan en la estructura de la ruta, mientras que los query strings se envían como pares clave-valor después del símbolo ?
.
Los parámetros de ruta son dinámicos y se indican en la definición de la ruta usando :nombre
. Por ejemplo:
const express = require('express');
const app = express();
app.get('/usuario/:id', (req, res) => {
const userId = req.params.id;
res.send(`El ID del usuario es: ${userId}`);
});
app.listen(3000, () => {
console.log('Servidor en ejecución en http://localhost:3000');
});
En el ejemplo anterior, si se visita http://localhost:3000/usuario/123
, se obtendrá la respuesta El ID del usuario es: 123
. Aquí, :id
es un parámetro de ruta capturado con req.params.id
.
Los query strings se envían como pares clave=valor
en la URL después del símbolo ?
. Pueden capturarse con req.query
. Un ejemplo:
app.get('/buscar', (req, res) => {
const termino = req.query.termino;
res.send(`Resultado de la búsqueda para: ${termino}`);
});
Si se visita http://localhost:3000/buscar?termino=express
, se mostrará la respuesta Resultado de la búsqueda para: express
. Aquí, termino
es un parámetro de consulta.
app.get('/producto/:categoria', (req, res) => {
const categoria = req.params.categoria;
const marca = req.query.marca;
res.send(`Productos en la categoría: ${categoria}, marca: ${marca || 'todas'}`);
});
Si se accede a http://localhost:3000/producto/electronica?marca=samsung
, la respuesta será Productos en la categoría: electronica, marca: samsung
.
app.get('/articulo/:id/:seccion', (req, res) => {
const { id, seccion } = req.params;
res.send(`Artículo ID: ${id}, Sección: ${seccion}`);
});
En este caso, la URL http://localhost:3000/articulo/45/noticias
mostrará Artículo ID: 45, Sección: noticias
.
Para más detalles, puedes consultar la documentación oficial de Express.
Jorge García
Fullstack developer