axios 发送psot请求,Express 打印请求时req.body 为空

问题描述

在使用express时,想接收文件,但是发现req.body 不接收数据为空

how to solve?

错误的写法:

let bodyParser = require('body-parser');`
// parse application/x-www-form-urlencoded
app.use(bodyParser.urlencoded({ extended: false }))
// parse application/json
app.use(bodyParser.json())

由于express在2019年就取消了 bodyParser模块,导致bodyParser 没有生效,但是VS给了横线提示,当时并没有在意,也是没有理解代码,拿来主义的心理作祟,导致给自己挖了很大的一个坑,还填不上。

正确的写法:

(直接用express掉用以前在bodyParser中的方法即可)这个代码要卸载使用路由的前面才可以生效

// parse application/x-www-form-urlencoded
app.use(express.urlencoded({ extended: false }))
// parse application/json
app.use(express.json())

其实还是很奇妙的,才开始接触node,找了一个两年前的项目,有点过度依赖和信任这份代码了,导致接收文件这个事儿困扰了我很久。也给了很大的教训,以后写代码,不要过分相信别人说的,要一步一步的debug,不要想当然的debug!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值