You can handle errors using the onError
option:
app.post('/upload',[
multer({
dest : './uploads/',
onError : function(err, next) {
console.log('error', err);
next(err);
}
}),
function(req, res) {
res.status(204).end();
}
]);
If you call next(err)
, your route handler (generating the 204) will be skipped and the error will be handled by Express.
I think (not 100% sure as it depends on how multer
is implemented) that your route handler will be called when the file is saved. You can use onFileUploadComplete
to log a message when the upload is done, and compare that to when your route handler is called.
Looking at the code, multer
calls the next middleware/route handler when the file has been uploaded completely.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…