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

141
Views
Cómo obtener una consulta de solicitud en la misma url en JavaScript

Soy totalmente novato en JavaScript y Express. Ahora estoy tratando de crear una ruta para verificar si el nombre del usuario ya se ha guardado como una cookie en el servidor; de lo contrario, el usuario puede completar el formulario y enviarlo al servidor. El nombre que envió el usuario aparecería en la URL y puedo usar req.query para obtener el nombre de http://localhost:3000/trackName?name=aaa , guardarlo en una cookie, redirigir a la página de verificación e imprimirlo en el sitio, hecho.

Sin embargo, ahora me he atascado en la parte "El nombre que envió el usuario aparecerá en la URL y puedo usar req.query para obtenerlo y guardarlo en una cookie", porque mi programa nunca llega a la segunda función "obtener" en mi código, puedo imprimir el nombre que obtengo en el primer "obtener", pero la segunda parte nunca se ejecutará en la consola, ni en el navegador.

Aquí está mi código:

 router.get('/myName', (req, res) => { const name = req.cookies.username; if (name) { console.log(name); res.render('myName', {name: name}); } else { console.log("else"); res.render('myName'); } }); router.post('/myName', (req, res) => { res.redirect('/trackName'); }); router.get('/trackName', (req, res) => { console.log(req.query.name); // here I can print out the name I got from form in terminal 'aaa' return res.render('trackName'); }); router.get('/:id', (req, res) => { console.log(req.query.name); // This part never appeared in terminal res.cookie('name', req.query.name); res.redirect('/myName'); }) router.post('/goodbye', (req, res) => { res.clearCookie('name'); res.redirect('/myName'); });

Además, aquí está mi formulario de pug para obtener el nombre:

 doctype html html(lang="en") head title My Server body block content if name h2 username: #{name} form(action='/goodbye', method='post') button(type='submit') Goodbye else form(action='/trackName', method='get') label Please enter your name: input(type='text', name='name') button(type='submit') Submit

He intentado juguetear durante mucho tiempo, pero todavía falló... ¿Alguien podría ayudarme con algunas palabras clave o métodos de búsqueda?

Actualización: probé la sugerencia de @ jfriend00 de modificar /trackName a /name en mi formulario HTML para hacer que router.get('/:id', ... se ejecute, pero ahora obtuve la URL http://localhost:3000/name?name=aaa que no es lo que quiero, y aún así el router.get('/:id', ... tampoco recibe la consulta...

about 4 years ago · Juan Pablo Isaza
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!