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

155
Views
tratando de usar express y redis para hacer una página web de inicio de sesión

Estoy tratando de hacer una página de inicio de sesión simple. Tengo que hacerlo para un proyecto universitario. El problema es bastante simple, estoy tratando de usar redis para que sea la base de datos para los usuarios y las contraseñas. El problema es que no puedo extraer los valores de la respuesta que obtengo de redis. Tengo una ventana acoplable que ejecuta la imagen de redis y todo se conecta. En el siguiente ejemplo, intento hacer un cambio booleano simple de verdadero a falso. de acuerdo con los datos dentro de la clave (estoy usando "a" como la clave) pero no importa lo que haga, el valor no parece cambiar, vale la pena señalar que soy muy nuevo en esto y en js en particular, leí en la api de redis que todas las funciones son asíncronas, intenté cambiar el código pero no ayudó.

 app.get('/enter', (req, res) => { var username =req.query.user; var password = req.query.pass; ans = false redis.get(username,function(err, reply) { if(reply != null ) ans = true; }) console.log(ans); })

Solo intento verificar que la clave tenga un valor. Traté de crear una variable antes y después de la solicitud, pero no se ajusta. Gracias por su tiempo.

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

0

Veo que no comprende los conceptos básicos de las devoluciones de llamada y el comportamiento asincrónico de javascript.

Bueno, puedes codificar así:

 app.get('/enter', async (req, res) => { var username =req.query.user; var password = req.query.pass; ans = false let reply = await getUsername(username) console.log(reply) console.log(ans); }) function getUsername(username) { return new Promise((res, rej) => { redis.get(username, function(err, reply) { if(err) rej(err) res(reply) }) }) }

Simplemente puede prometer su código redis con una new Promise y luego puede usar el estilo async / await en él

De lo contrario, debe escribir su código en la devolución de llamada que conduce a un infierno de devolución de llamada si tiene más código

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!