Dando por ejemplo la solicitud de ruta GET a continuación, ambos FUNCIONAN. Estoy tratando de entender sus diferencias y cuál es el mejor enfoque para hacer esto. ¿Algún comentario sobre las 2 opciones de codificación, por favor?
Opción 1
router.get("/", (req, res) => { AddStudents.find({}) .then((data) => { res.json(data); }) .catch((error) => { }); });opcion 2
router.get("/", async (req, res) => { AddStudents.find({}, (err, result) => { if (err) { res.send(err); } res.json(result); }); });res.json convertirá los datos al formato json. Entonces convertirá los datos a
res.json: content-type: application/jsonde
res.send: content-type: text/htmlopcion 2
asyncenvolverá automáticamente los datos en una promesa para que no tengas que hacer eso.
Entonces, cuando se pasa una matriz, devuelven lo mismo, pero si hay valores nulos o indefinidos en los datos, el res.json hará una conversión JSON explícita de ellos porque no es un json válido