Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

116
Visualizações
Validación y comparación de valores de req.body con valores de usuario encontrados

Tengo una API para restablecer la contraseña. Esta API verifica si hay un usuario con el número de teléfono ingresado y, si hay alguno, verifica si las entradas como fecha de nacimiento, nacionalidad y número de identificación también son correctas y, si lo son, genera una nueva contraseña para el usuario. Sin embargo, estoy usando muchas declaraciones if. Así que mi pregunta es si esto es práctico o debería cambiar mi sintaxis por el bien del rendimiento de la aplicación y las buenas prácticas generales para escribir código estándar.

He adjuntado mi código a continuación con un montón de declaraciones if lol

 const asyncHandler = require("express-async-handler"); const User = require("../../models/user") const bcrypt = require("bcrypt"); const jwt = require("jsonwebtoken"); const generateStrongPassword = require('../../utils/generateStrongPassword'); const resetPassword = asyncHandler(async (req, res) => { const { phonenumber, fullname, nationality, nationalidnumber, dateofbirth } = req.body; const user = await User.findOne({ phonenumber: phonenumber }); if (user) { if (fullname != user.fullname) { throw new Error('incorrect fullname'); } if (nationality != user.nationality) { throw new Error('incorrect nationality'); } if (nationalidnumber != user.nationalidnumber) { throw new Error('incorrect national id number '); } if (dateofbirth != user.dateofbirth) { throw new Error('incorrect date of birth'); } // if all validations are passed then // generate new password const newrawpassword = await generateStrongPassword(); console.log(newrawpassword); // harsh the password const salt = await bcrypt.genSalt(10); const newHashedPassword = await bcrypt.hash(newrawpassword, salt); const resetPassword = await User.updateOne({ $set: { password: newHashedPassword } }) res.json('password successfully reseted') } else { throw new Error('No account has that phone number'); } }); module.exports = resetPassword;
about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda