Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

218
Vistas
¿Cómo pasar req.params como argumento a una función de middleware?

Estoy tratando de encontrar una manera de usar req.params como argumento en mi middleware. Tome este código (obviamente roto) por ejemplo:

 router.post('/:myParam', checkSchema(schemas[req.params.myParam]), async (req, res, next) => { // do stuff })

El objetivo aquí es que estoy usando express-validator y cargo un esquema dinámico basado en el parámetro que se pasa. El código anterior obviamente está roto porque todavía no tengo el alcance para acceder a la variable req, solo estoy tratando de ilustrar lo que estoy tratando de lograr.

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

si conoce los posibles parámetros por delante, podría hacer algo como lo siguiente:

 router.post("/:myParam", checkSchema("soccer"), async (req, res, next) => {}); //checkSchema.JS const soccerSchema = require("../schemas/soccerSchema"); const swimmingSchema = require("../schemas/swimmingSchema"); module.exports = function (schemaName) { return (req, res, next) => { const schemas = { soccer: soccerSchema, swimming: swimmingSchema }; //You can access it here schemas[schemaName] console.log(schemas[schemaName]); next(); }; };

about 4 years ago · Juan Pablo Isaza Denunciar

0

Puede llamar directamente a schemas(req.params.myParam) dentro del middleware checkSchema ya que el middleware tendrá acceso al objeto de solicitud.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda