express,中间件(body-parser),req.body获取不到参数(含postman发请求的方法)

时间:2021-10-09 10:06:42

问题描述:

最近在做毕设,express 里边的中间件(body-parser)失效req.body获取不到任何值req.query能获取到值。一开始加body-parser中间件是有用的,直到昨天加了token之后,body-parser失效。试着把token去掉,无济于事,也不是这个问题,也有说版本对不上的,换了中间件的引入方法,还是没用!!!

 

后端代码如下:

 const bodyParser = require('body-parser');
 app.use(bodyParser.json());

 

前端代码如下:

  headers: {
    'Content-Type': 'application/json; charset=UTF-8'
  }

 

原因以及解决方法:

后来发现是前端拦截器请求头的content-type的问题,仔细一看,application/json;后边多了个空格,把空格去掉即可!

 

Postman发请求的方法

另外在postman中直接请求,req.body也是接受不到任何参数的。
其实只要在请求body里边勾选raw,格式设为JSON(application/json)

附图:

express,中间件(body-parser),req.body获取不到参数(含postman发请求的方法)