按照文档操作后,我得到了执行以下函数的空数组。
var multer = require('multer');
var upload = multer();
router.post('/image', upload.array('photos', 4), function(req, res) {
var file = req.files;
console.log('======')
console.log(file);
res.end();
});
<form action="/products/image" method="post" enctype="multipart/form-data">
<input type="file" name="file" value="upload" multiple>
<input type="submit" value="upload">
</form>
但奇怪的是这确实有效
router.post('/image',upload.single('avatar'), function(req, res) {
var file = req.files;
console.log('======')
console.log(file);
res.end();
});
与单个文件上传。
Upload.array() 需要字段名称和 maxCount 参数。但是您指定的文件名称是“file”,并且您正在使用中间件 upload.array('photos',4)。尝试下面的方法可能会起作用
upload.array('file',4)
or
upload.any();
请参考文档:https://github.com/expressjs/multer
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)