Javascript 发送到客户端错误节点后无法设置标头
我是Nodejs新手,希望在文件mimetype不是png或jpeg时发送响应代码404。 以及我想发送响应代码404,如果文件大小大于5mb。Javascript 发送到客户端错误节点后无法设置标头,javascript,node.js,express,multer,Javascript,Node.js,Express,Multer,我是Nodejs新手,希望在文件mimetype不是png或jpeg时发送响应代码404。 以及我想发送响应代码404,如果文件大小大于5mb。 我正在使用此代码执行此操作,并且在nodejs上的日志中出现此错误 return res.send()}条件为true。{“message”:{},“data”:{}要发回一个对象,请使用res.json()(另外,错误的原因是您试图多次发回一个响应,因此需要确保只调用一个.res.send())在res.send()之前添加return解决了@An
我正在使用此代码执行此操作,并且在nodejs上的日志中出现此错误
return res.send()}
条件为true。{“message”:{},“data”:{}
要发回一个对象,请使用res.json()
(另外,错误的原因是您试图多次发回一个响应,因此需要确保只调用一个.res.send())在res.send()之前添加return解决了@AndreasSchrottenbaum建议的问题。
router.post("/insertNewProduct", auth, receive.single('productUrl'), async (req, res) => {
try {
if (req.file.mimetype !== 'image/jpeg' && file.mimetype !== 'image/png') {
res.status(404).send({
message: "Column productUrl can only accept jpeg or png image",
data: {}
})
} else if (req.file.size > (1024 * 1024 * 5)) {
res.status(404).send({
message: "Image size can not be greater that 5mb.",
data: {}
})
}else{
//Add Product to db
}
} catch (e) {
res.status(404).send({
message: e,
data: {}
});
}
});