Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

256
Vistas
¿Cómo puedo mostrar un error específico basado en lo que está mal?

Me gustaría mostrar un error específico en lugar de las "credenciales incorrectas" genéricas

Por ejemplo, si alguien inserta la contraseña pero el correo electrónico es correcto, solo debería aparecer "la contraseña es incorrecta".

¿Cómo puedo lograr eso?

 app.post('/login', async (req, res) => { const client = new MongoClient(url) const data = req.body.formData try { await client.connect() const database = client.db("data") const collection = database.collection("utenti") const result = await collection.findOne({ email: data.email, password: data.password }) console.log(result) if (result.email && result.password) { res.status(200).send("Success") } } catch (err) { res.status(400).send("Wrong credentials") } })
about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Para lograr lo que desea, primero debe verificar la base de datos para encontrar al usuario con su correo electrónico.

Luego, si la encuentra, puede verificar si la contraseña es correcta, si no encuentra el usuario, puede enviar la información de vuelta.

Luego, si la contraseña está bien, puede iniciar sesión como usuario, si no, envíe un mensaje sobre la contraseña incorrecta.

Pero una vez más, ¡cifre su contraseña! Y menos información le das a un atacante, la mejor protegida es tu aplicación.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Recomiendo no mostrar que "la contraseña es incorrecta" porque creará una laguna en su autenticación. Pero he proporcionado un código para verificar la contraseña por separado de su mensaje.

 app.post('/login', async (req, res) => { const client = new MongoClient(url) const data = req.body.formData try { await client.connect() const database = client.db("data") const collection = database.collection("utenti") const email = await collection.findOne({ email: data.email, }) console.log("email is correct", email); if (!email) { res.status(400).send("Your email is incorrect") } const password = await collection.findOne({ password: data.password, }); if (email && password) { res.status(200).send("Success") } if (!password) { res.status(400).send("Only Email is correct and password is incorrect", email); } } catch (err) { res.status(400).send("Wrong credentials") } })
about 4 years ago · Juan Pablo Isaza Denunciar

0

debe validar individualmente en alguna función (en su caso para correo electrónico y contraseña) y lanzar excepciones específicas.

Algo como esto (en python):

 fun validate_email_password(email, password): email = db.findByEmail(email) if not email: throw EmailNotFound() password = db.findByPassword(password) if not password: throw passwordNotFound()

capture estas excepciones específicas en su código y tírelas. Esta solución tiene un costo de db.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda