【发布时间】:2020-05-20 16:37:03
【问题描述】:
这是我的快递路线代码。 当我尝试在邮递员中删除或发布时,在控制台中出现此错误
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at ServerResponse.setHeader (_http_outgoing.js:485:11)
at ServerResponse.header (/Users/ivanolvera/Movvel/Server/node_modules/express/lib/response.js:771:10)
at ServerResponse.send (/Users/ivanolvera/Movvel/Server/node_modules/express/lib/response.js:170:12)
at Query.<anonymous> (/Users/ivanolvera/Movvel/Server/src/routes/modelo.js:56:9)
at Query.<anonymous> (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/Connection.js:526:10)
at Query._callback (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/Connection.js:488:16)
at Query.Sequence.end (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/protocol/sequences/Sequence.js:83:24)
at Query.ErrorPacket (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/protocol/sequences/Query.js:92:8)
at Protocol._parsePacket (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/protocol/Protocol.js:291:23)
at Parser._parsePacket (/Users/ivanolvera/Movvel/Server/node_modules/mysql/lib/protocol/Parser.js:433:10) {
code: 'ERR_HTTP_HEADERS_SENT'
}
// 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");
});
});
【问题讨论】:
-
只需将
res.status(500).....更改为return res.status(500)....即可停止执行并从查询返回..