Ceci est mon code de routes dans Express. Lorsque j'essaie de supprimer ou de poster dans Postman, placez cette erreur dans la console
// delete by id router.delete("/:idModelo", function(req, res, next) { const id = req.params.idModelo; const sql = `DELETE * FROM Modelo WHERE idModelo=${id}`; pool.query(sql, function(err, row, fields) { if (err) { res.status(500).send({ error: "Something failed!" }); } res.send("Deleted"); }); });
3 Réponses :
router.delete("/:idModelo", function(req, res, next) { const id = req.params.idModelo; const sql = `DELETE * FROM Modelo WHERE idModelo=${id}`; pool.query(sql, function(err, row, fields) { if (err) { res.status(500).send({ error: "Something failed!" }); return; } res.send("Deleted"); }); }); You forgot to put a return after the first res call. So what happened was it saw ran the first one and since there was no return statement it went ahead to run the second one.So you can solve you error in 2 ways. put the res.send in the else block or put a return keyword after the res.status. It doesn't have to return anything. You just need to signal to the function that after it sends a response error it should terminate the function.
Si vous êtes piscine.Query () code> rencontre une erreur, vous appellerez
res.Send () code> deux fois:
router.delete("/:idModelo", function(req, res, next) {
const id = req.params.idModelo;
const sql = `DELETE * FROM Modelo WHERE idModelo=${id}`;
pool.query(sql, function(err, row, fields) {
if (err) {
res.status(500).send({ error: "Something failed!" });
} else {
res.send("Deleted");
}
});
});
Just retour retour retour Suivant (); dans votre middleware et cela fonctionnera à coup sûr. p>
seulement retourner ensuite ();