手记

multer上传文件遇到的问题app.use() requires middleware functions

原来的代码:

var app=require('express')();
var multer=require('multer');

app.use(multer({dest:'./public/uploads/'}}));
//.........

运行时出现本文标题描述问题,查找发现原因,app.use()语句引入需要参数为RequestHandler类型

但是上面语句中的引用其参数类型不符合,

因此出现标题中的错误,可采用以下方法:

var multer=require('multer');
var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, __dirname+'/public/uploads/')
},
filename: function (req, file, cb) {
cb(null, file.originalname);
}
});
//......
app.use(upload.array('img',5));//多文件上传模式


1人推荐
随时随地看视频
慕课网APP