• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

228
Vistas
¿Cómo incluir condicionalmente una sub-aplicación con Express?

Estoy usando una biblioteca llamada Grant en mi aplicación. Anteriormente, lo incluí siguiendo los ejemplos en el archivo Léame vinculado anteriormente, sin embargo, ahora tengo la necesidad de incluirlo condicionalmente y parece que no puedo hacerlo funcionar.

Cómo funcionaba antes

 const grant = new Grant(grantConfig); app.use(grant);

He hecho middleware condicional en Express antes, así que pensé que incluir a Grant no sería un problema.

Cómo lo intenté (no funciona)

 const grant = new Grant(grantConfig); app.use((req, res, next) => { if (someBooleanVariable) { next(); } else { grant(req, res, next); } });

Así que esto no funciona. Creo que puede tener algo que ver con que Grant sea una instancia de Express frente a una función de middleware normal, pero no estoy seguro. Puede ver cómo se implementa Grant aquí . Los documentos de Express dicen que debe tratarse de la misma manera, pero también podría estar malinterpretándolos.

Nota: necesito que esto funcione por solicitud, de ahí el enfoque de estilo de middleware.

almost 3 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Si desea usar un middleware en particular solo en un subconjunto de rutas:

 // On a single route: app.get('/some/route', grant, function(req, res) { ... }); // On a set of routes with a particular prefix: app.use('/api', grant, apiRouter); // On a specific router: let apiRouter = express.Router(); apiRouter.use(grant); apiRouter.get(...);
almost 3 years ago · Santiago Trujillo 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 Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda