【发布时间】:2022-08-09 20:47:53
【问题描述】:
当我收到来自前端的请求时,我将日志放入路由处理程序中
@Post(\'create\')
createPost(
@Body() body: CreatePostDto,
){
console.log(body); // I\'m getting body correctly
}
但是我想在 main.ts 中添加 bodyParser 因为解析 formData 是所有字符串,我想获取从前面添加的其他类型。因此,当我将中间件放入 main.ts 时,我检查了这一点
app.use((req, res, next) => {
console.log(req.body) //its empty object so why?
})
所以我有2个问题。
- 为什么在中间件中我得到空体?
- 如何解析表单数据?
-
快递\'
bodyparser不处理multipart/form-data:expressjs.com/en/resources/middleware/body-parser.html -
是的,你必须设置 set app.use(urlencoded(extended: true })
-
@AdrienDePeretti
application/x-www-form-urlencoded与multipart/form-data不一样 -
好的,但我也有疑问,为什么在中间件中我得到空的身体?
-
bodyParser将不起作用如果我得到req.body的空对象
标签: node.js express nestjs middleware