关于node.js:使用nodejs中的Multer上传文件

file uploading with Multer in nodejs

每当我尝试在base64中上载图像时,我正在使用带有nodejs的Multer 1.2.0版,出现错误--Error:字段值太长
错误

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Error: Field value too long
at makeError (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\\lib\\make-error.js:12:13)
at abortWithCode (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\\lib\\make-middleware.js:77:22)
at Busboy. (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\\lib\\make-middleware.js:83:34)
at Busboy.emit (events.js:118:17)
at Busboy.emit (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\
ode_modules\\busboy\\lib\\main.js:31:35)
at PartStream.onEnd (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\
ode_modules\\busboy\\lib\\types\\multipart.js:261:15)
at PartStream.emit (events.js:129:20)
at Dicer.onPart (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\
ode_modules\\busboy\\lib\\types\\multipart.js:120:13)
at Dicer.emit (events.js:107:17)
at Dicer.emit (C:\\xampp\\htdocs\\sitename\
ode_modules\\multer\
ode_modules\\busboy\
ode_modules\\dicer\\lib\\Dicer.js:80:35)

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
var multer  = require('multer');

var storage = multer.diskStorage({
    destination: function (req, file, cb) {
        cb(null, './photos')
    },
    filename: function (req, file, cb) {
        cb(null, file.fieldname + '-' + Date.now())
    }
})

var upload = multer({ storage: storage }).any()

app.post('/admin/uploadpicture', upload, function(req, res) {
    res.send('Test');
});

无法理解我想念的地方,请提出任何建议。
预先谢谢您。


使用限制选项增加字段数据限制:

1
2
3
multer({
  limits: { fieldSize: 2 * 1024 * 1024 }
})

参考链接


您可以使用upload.array('field')上传所需数量的文件。