Expressjs+Mongoose开发新增产品API时req.body返回空对象如何解决
Express后端req.body为空问题解决方案
- 未配置请求体解析中间件
Express 4.16及以上版本默认不自动加载请求体解析逻辑,需要手动注册内置中间件,注意必须写在所有业务路由注册之前:// 解析JSON格式请求体,对应Postman raw-JSON格式 app.use(express.json()) // 解析表单格式请求体,对应Postman x-www-form-urlencoded格式 app.use(express.urlencoded({ extended: true })) - Postman请求格式不匹配
- 提交JSON参数时,需在Body选项卡选择
raw,右侧下拉栏选择JSON,不要选Text/JavaScript等其他格式 - 所有请求参数必须写在Body选项卡内,不要误写到Params、Headers选项卡
- 提交JSON参数时,需在Body选项卡选择
- 请求头不匹配
确认请求头Content-Type字段和提交的参数格式一致:JSON格式对应application/json,表单格式对应application/x-www-form-urlencoded,Postman选择对应Body格式时会自动生成该字段,不要手动修改。
内容的提问来源于stack exchange,提问作者Captain Alpha
相关产品推荐
相关产品推荐

