【发布时间】:2019-09-05 02:15:34
【问题描述】:
使用我的错误处理,它会按预期抛出错误,即使它上传了一些文件(直到达到限制)然后抛出错误。在上传一些块文件之前如何抛出这个错误?
如果超过上传文件的限制,如何在上传前抛出错误?提前致谢!
我试过了:
app.post('/upload',[
multer({
dest : function(req, file, cb){
let dest = 'uploads/1992-12-11/'
let len = parseInt(req.files.length);
if(len === 20){
console.log('let us throw error');
}
cb(null, dest);
}
onError : function(err, next){
console.log('error' + err);
next(err);
}
}),
function(req, res) {
res.status(204).end();
}
});
使用 express-fileupload 使用 multer 指定技术进行验证
var multer = require('multer')
var upload = multer().single('avatar')
app.post('/profile', function (req, res) {
upload(req, res, function (err) {
if (err instanceof multer.MulterError) {
// A Multer error occurred when uploading.
} else if (err) {
// An unknown error occurred when uploading.
}
// Everything went fine.
})
})
为 console.log(req.files) 返回 null;
尝试了该线程中的几乎所有内容:File uploading with Express 4.0: req.files undefined
错误处理:
app.post('/upload',[
multer({
dest : './uploads/1992-12-11/',
onError : function(err, next) {
console.log('error', err);
next(err);
}
}),
function(req, res) {
res.status(204).end();
}
]);
【问题讨论】: