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

113
Views
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
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!