Cuando realiza una solicitud POST sin datos del cuerpo, debe devolver un código de estado 400, pero está devolviendo un código de estado 201 con un objeto vacío.
Este el código:
router.post('/', (req: Request, res: Response) => { const transaction = new Transactions({ name: req.body?.name, amount: req.body?.amount, type: req.body?.type, }) try{ const newTransaction = transaction.save(); return res.status(201).json(newTransaction); }catch (err){ return res.status(400).json({message: err.message}); } })Esta es la solicitud del cartero y la respuesta:
Esto se parece a mongodb y mangosta. .save() devuelve una promesa y debe resolverse. Puedes hacerlo con async/await aquí. Lo que devuelves como respuesta es una promesa pendiente.
router.post("/", async (req: Request, res: Response) => { const transaction = new Transactions({ name: req.body?.name, amount: req.body?.amount, type: req.body?.type, }); try { const newTransaction = await transaction.save(); return res.status(201).json(newTransaction); } catch (err) { return res.status(400).json({ message: err.message }); } });