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

120
Views
Consulta de URL en express js con postgresql

Estoy tratando de hacer una consulta desde mi base de datos a través de la URL, pero la respuesta solo devuelve todas mis personas.

 exports.getPersonByName = async (req, res) => { const query = req.query.q try{ const person = await pool.query('SELECT * FROM person WHERE firstname LIKE $1', [query]) res.status(200).json(person) } catch(error) { res.status(500).json({ message: error.message }) }

}

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Hay dos problemas con su implementación.

  1. Le falta el middleware codificado en urlencoded en el archivo server.js (agréguelo después de la app.use(express.json()) ):
 app.use(express.urlencoded({ extended: true }));
  1. No ha configurado la ruta para el método getPersonByName en person.route.js . No necesita especificar parámetros de consulta en la ruta en sí. Actualmente, su ruta GET /person es utilizada por la función getAllPersons , por lo que tiene dos opciones:
  • Unifique las funciones getAllPersons y getPersonByName en la misma ruta GET /person y recupere el parámetro si está presente.

Mantendrá solo la ruta y las funciones getAllPersons y manejará el parámetro q allí

 exports.getAllPersons = async (req, res) => { const query = req.query.q || ''; try { const person = await pool.query( 'SELECT * FROM person WHERE firstname LIKE $1', [query] ); res.status(200).json(person); } catch (error) { res.status(500).json({ message: error.message }); } };
  • Defina una ruta diferente para getPersonByName , por ejemplo:
 router.get('/byname', controller.getPersonByName)

Y envíe sus solicitudes a /person/byname?q=Example (manteniendo los métodos getPersonByName y getAllPersons tal como están definidos)

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