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

155
Vistas
¿Qué enfoque es más elegante en los enrutadores express.js api?

Estaba practicando con express y mongoDB, cuando estaba definiendo rutas API me di cuenta de que las personas en Internet usan el primer método. Pero creo que el segundo es más fácil de leer, especialmente con datos más grandes. Me pregunto si hay una diferencia o un problema de seguridad entre ellos. Gracias por adelantado.

 // first approach router.route("/add").post((req, res) => { const email = req.body.email; const password = req.body.password; const displayName = req.body.displayName; const newUser = new User({ email, password, displayName }); newUser .save() .then(() => res.json("OK")) .catch((err) => { res.status(400).json(err); }); }); // second approach router.route("/add").post((req, res) => { const newUser = new User({ ...req.body }); newUser .save() .then(() => res.json("OK")) .catch((err) => { res.status(400).json(err); }); });
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

cuando usa mongoose, según la documentación de mongoose, de forma predeterminada, los documentos ( req.body ) se validan automáticamente (según el esquema) antes de guardarlos en la base de datos.

Esto es para evitar guardar un documento no válido, por lo que no hay un problema de seguridad en el segundo enfoque y es más fácil de leer, por lo que puede usar el segundo enfoque

over 4 years ago · Santiago Trujillo Denunciar

0

Desde la perspectiva de la seguridad, son lo mismo.

En mi opinión, el primer enfoque es mejor, algunas razones prácticas:

  • más fácil para otros desarrolladores ver los datos que está guardando
  • es posible que desee hacer algo con los datos antes de guardarlos
  • ayuda a mantener la consistencia del código (misma estructura que donde se necesitan las variables)

Puede simplificar las declaraciones utilizando la sintaxis de asignación de desestructuración de ES6 .

Desde:

 const email = req.body.email; const password = req.body.password; const displayName = req.body.displayName;

Para:

 const { email, password, displayName } = req.body;

Además, consulte el JavaScript de código limpio que puede ayudarlo a decidir.

over 4 years ago · Santiago Trujillo 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