最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

手柄multer.single(“文件”)错误时上传多个文件

IT培训 admin 3浏览 0评论

手柄multer.single(“文件”)错误时上传多个文件

我跟着Multer code:

app.post('/profile', upload.single('avatar'), function (req, res, next) {

})

一个单一的文件应该被上传。但是,如果一个人试图上传多个文件,如何捕捉到错误MulterError: Unexpected field

我曾尝试以下没有成功:

app.post('/profile', upload.single('avatar'), function (req, res, next) {
    try {

    } catch (error) {
    // Why cannot catch any error?
    }
})
回答如下:

upload.single执行next()那么只有说到这里,

app.post('/profile', upload.single('avatar'), function (req, res, next) {
    try {

    } catch (error) {
        // It catches only errors from above `try block`
    }
});

如果upload.single面临任何错误就不会调用next()而是被传递到下一个听者。为了赶上upload.single必须以上app.post(/profile)后添加此的任何错误。

app.use(function (err, req, res, next) {
    var error = err.message;
    res.status(500);
    res.send({ "error": error });
});

手柄multer.single(“文件”)错误时上传多个文件

我跟着Multer code:

app.post('/profile', upload.single('avatar'), function (req, res, next) {

})

一个单一的文件应该被上传。但是,如果一个人试图上传多个文件,如何捕捉到错误MulterError: Unexpected field

我曾尝试以下没有成功:

app.post('/profile', upload.single('avatar'), function (req, res, next) {
    try {

    } catch (error) {
    // Why cannot catch any error?
    }
})
回答如下:

upload.single执行next()那么只有说到这里,

app.post('/profile', upload.single('avatar'), function (req, res, next) {
    try {

    } catch (error) {
        // It catches only errors from above `try block`
    }
});

如果upload.single面临任何错误就不会调用next()而是被传递到下一个听者。为了赶上upload.single必须以上app.post(/profile)后添加此的任何错误。

app.use(function (err, req, res, next) {
    var error = err.message;
    res.status(500);
    res.send({ "error": error });
});
发布评论

评论列表 (0)

  1. 暂无评论