multer 报错Unexpected field,新人求助
发布于 9 年前 作者 jhonny-me 16342 次浏览 最后一次编辑是 8 年前 来自 问答

使用版本

node 5.0.0 multer 1.1.0

在跟着这个教程https://github.com/nswbmw/N-blog/走的时候,到图片上传这一部分卡住了,因为mongodb跟node都是最新版,所以在走教程的时候提到的第三方模块也都是用的最新版,但是一直报Unexpected field的错,实在是没能力调了,有没有大神愿意帮个忙,感激涕零。

var multer = require('multer'),
    upload = multer({ dest: './public/images/' });
...
 app.post('/upload', upload.array('photos', 5), function (req, res) {
        console.log('funny this');
        console.log(req.files);
        req.flash('success', '文件上传成功!');
        res.redirect('/upload');
    });

代码地址https://github.com/jhonny-me/nodejs-blog1.

10 回复

目测是HTML的文件表单的name不是"photos",或则同时存在其他name的文件表单

为也是卡在这里了

@hank2015 我换了教程里的版本先往下走的。这个还是不知道原因。。

@jhonny-me 你不做增加上传文件这个功能就直接往下做了吗?

@hank2015 做了啊,不过multer 换成"multer": "0.1.6"这个版本了。

@jhonny-me multer官方文档没看懂什么意思,今天晚上换成低版本的试试,方便留个QQ吗?

如果报Unexpected field,code:LIMIT_UNEXPECTED_FILE 确实要检查下.single(fieldname),fieldname不是随便填的要跟表单的name一致。

@ciey 谢谢,解决了我的问题, 这里的fieldname原来是跟<input type=“file” name=“fieldname”>里的name保持一致的。

回到顶部