multer中间件报错:MulterError: Unexpected field at wrappedFileFilter... 1718768233896.jpg

问题描述:

Nodejs在使用multer中间件做上传组件的时候,报错:MulterError: Unexpected field at wrappedFileFilter...

问题分析:

这是multer没有匹配到上传时候的type="file" 的name属性,网上很多说是用了 multer 不能使用的关键词,这种说法是错误的。还有的直接让更换插件,这些都不是解决这个问题的源头。

解决方案:

将前端上传时的input的name 和后端node接口中multer的name保持一致即可。以下都使用"image"

<form action="http://localhost:3001/uploads/files" method="POST" enctype="multipart/form-data">
        <input type="file" multiple="true" name="image">
        <button type="submit">上传</button>
</form>

node后端

const upload = multer({ storage: storage });
upload.single('image')