Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

397
Views
¿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.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

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(...);
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Virtual assistant