【发布时间】:2019-07-25 22:51:34
【问题描述】:
我正在尝试将文件从邮递员上传到 Node.js 服务器。我正在使用 multer 和 body-parse 来解析请求的正文。
用例:
- 当我在 Postman 中使用原始 JSON 作为正文的 POST 请求时,一切 工作正常,我可以看到与 Postman 中提供的完全一样的 req.body,而且我可以为 req.body 分配新的键值对,以便这些新变量可以在路由中的其他中间件中使用。
- 但是,当我尝试从邮递员上传文件时,在邮递员中使用表单数据作为正文,然后我仍然可以从 req.body 中获取所提供的值。但是在 multer 中间层之后,新分配给 req.body 的值(来自中间件)显示损坏,如 req.body 变为 [Object: null prototype]。我可以确认 Multer 工作正常,但 Multer 正在破坏 req.body 数据(在路由中间件本身中创建)
请帮忙识别req.body=[Object: null prototype]的含义
【问题讨论】:
-
发布您的 multer 的一些代码并指定您收到错误的位置。此外,请确保未发送像 Content-type 那样的标头未选中。知道
body-parser不会解析req.body,因为您将所有数据作为multipart/form-data发送,multer处理。 -
在网页提交文件上传表单时有效吗?你能附上一些关于邮递员配置的截图吗?
标签: node.js http postman multer body-parser