gpt4 book ai didi

javascript - NodeJS Multer在上传之前验证字段

转载 作者:行者123 更新时间:2023-12-01 05:57:51 25 4
gpt4 key购买 nike

我正在尝试在上传图片之前验证我的表单,但我的中间件上出现了空字符串

const upload = multer({
storage: storage
});

router.post('/upload', formsValidation, upload.fields([{

name: 'images',
maxCount: 20

}, {

name: 'imageMain',
maxCount: 1

}]), function(req, res, next) {
code...

});

这是我的中间件:
function formsValidation (req, res, next) {

console.log(req.body) //getting empty array here
return next();
}

我知道我可以使用 multer 的 fileFilter 但有时我没有任何图像可以上传只是要存储和验证的字符串,我试图将 req.body 从 multipart/form-data 解析为字符串,然后验证并使用 next()但我得到一个范围错误,任何想法我该如何解决这个问题?

最佳答案

这是来自 Multer 的 docs :

Note that req.body might not have been fully populated yet. It depends on the order that the client transmits fields and files to the server.



这意味着您必须调用 formsValidation就在 multer midlleware 之后,以确保所有发布的数据都已完全填充
router.post('/upload', upload.fields([{

name: 'images',
maxCount: 20

}, {

name: 'imageMain',
maxCount: 1

}]), formsValidation, function(req, res, next) {
code...
});

关于javascript - NodeJS Multer在上传之前验证字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48173677/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com