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

578
Views
Manejo de diferentes rutas de URL al llegar a un único punto final (Nodejs)

Estoy usando express nodejs para llegar a un punto final:

 app.use("/number", numberRouter);

Ahora tengo que manejar la URL en la que la ruta es diferente. Aquí tenemos tres caminos diferentes en la misma URL:

  • https://localhost:8080/número/uno
  • https://localhost:8080/número/dos
  • https://localhost:8080/number/tres

El archivo en el que se maneja el numberRouter:

 numberRouter.post("/", async (req:Request, res:Response) => { var url = req.protocol + '://' + req.get('host') + req.originalUrl; //what I want to do if (req.path == "one") { //do something } else if (req.path == "two") { //do something } });

Lo que quiero lograr es que una vez que llegue al punto final del number , obtenga la URL completa, extraiga su path y, en función de la path , procese más en lugar de llegar a tres puntos finales diferentes ( /number/one , /number/two , /number/three ). es posible?

Estoy usando cartero para realizar pruebas y si envío una solicitud de publicación con la siguiente URL: localhost:8080/number/one la solicitud de publicación falla. Quiero algo como esto en el código:

 numberRouter.post("/variablePath", async (req:Request, res:Response) => { ... }

donde variablePath se establece a través del cartero ( one , two o three ) y luego se procesa aquí.

SOLUCIÓN (siguiendo la respuesta de @traynor):

 app.use("/number", numberRouter);
 numberRouter.post("/:pathNum", async (req:Request, res:Response) => { if (req.path === "/one") { //do something } else if (req.path === "/two") { //do something } });

La solicitud de publicación a través del cartero: localhost:8080/number/:pathNum . En cartero, establezca el valor de pathNum en la sección Params bajo el encabezado Path Variables .

ingrese la descripción de la imagen aquí

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

usar parámetros de ruta

agregue su parámetro al enrutador, por ejemplo /:myparam , y luego verifíquelo y ejecute su código:

 numberRouter.post("/:myparam", async (req:Request, res:Response) => { const myParam = req.params.myparam; //what I want to do if (myParam == "one") { //do something } else if (myParam == "two") { //do something } });
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
Show me some job opportunities
There's an error!