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

219
Views
No se pueden mostrar mensajes de inicio de sesión cuando el nombre de usuario es correcto y la contraseña es incorrecta

Acabo de empezar a aprender express. Estoy agregando autenticación básica usando el pasaporte js. He seguido esta documentación . Está funcionando un poco extraño en los mensajes de error. Cuando el nombre de usuario es correcto y la contraseña es incorrecta, no agrega ningún mensaje a la sesión. Solo tiene información básica como la ruta.

 app.post("/login",(req,res)=>{ const user = new User({ username:req.body.username, password:req.body.password }); console.log(req.session); req.login(user,function(err){ if(err){ console.log(err); } else{ passport.authenticate("local",{ failureRedirect: '/login', failureMessage: true })(req,res,function(){ res.redirect("/secrets"); }); } }); });

Cuando el nombre de usuario es incorrecto, agrega un mensaje a la sesión pero no se recarga correctamente. no se recarga en absoluto a "/login". Tengo que matar literalmente el proceso y luego se agregan los datos de esta sesión.

No parece funcionar en absoluto. Por favor, ayúdenme a tratar ambos errores, es decir, nombre de usuario correcto, contraseña incorrecta y nombre de usuario incorrecto, contraseña incorrecta.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

No creo que uses esa función req.login correctamente.
Creo que no entiendes bien el inicio de login y authentication .

Lo que está pensando es if login fail then authenticate again mientras que, en realidad, authenticate user first, then login after

Así que el flujo, paso a paso será:

  1. Verifique al usuario, si este usuario ingresó una contraseña correcta o incluso si existe en el sistema.
    Este paso llamado authentication
  2. Después de verificar que el usuario es lo que afirma ser. Dejas que el usuario enter tu sistema. Esto se llama inicio de login

Aquí está el documento que puede seguir para comprender cómo funciona el pasaporte.
https://www.passportjs.org/concepts/authentication/downloads/html/ (Como es nuevo en expresarse, asegúrese de comprender completamente la sección General ; el Middleware y la Strategy son conceptos clave)
https://www.passportjs.org/tutorials/password/ (esta es una versión práctica del documento anterior)

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!