req.body返回undefined并安装了body-parser包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了req.body返回undefined并安装了body-parser包相关的知识,希望对你有一定的参考价值。

我正在尝试在express中运行post方法,但我遇到了一个问题,试图在req.body中获取post参数。我已经安装了body-parser包并在我的app.js文件中有这个。

var bodyParser = require('body-parser')
var app = express();
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())

我已经尝试了扩展设置为true和false的代码。当我运行这段代码时,我得到了返回{}。

app.post("/postfunction", function(req, res) {
    console.log(req.body)
});

有任何想法吗?

答案

试试这个吧

var express = require('express'),
app = express(),
bodyParser = require('body-parser');

app.use(bodyParser.json());

app.use(bodyParser.urlencoded({ extended: true })); 


app.post('/form',function(req, res){
res.setHeader('Content-Type', 'application/json');

    setTimeout(function(){

        res.send(JSON.stringify({
        firstName: req.body.firstName || null,
        lastName: req.body.lastName || null
        }));

    }, 1000)

  console.log('you posted: First Name: ' + req.body.firstName + ', Last Name: ' + 
    req.body.lastName);
  });

app.listen(3000, function () {
    console.log('Server is running. Point your browser to: http://localhost:3000');
 });

以上是关于req.body返回undefined并安装了body-parser包的主要内容,如果未能解决你的问题,请参考以下文章

express.js get 方法无法获取 req.body 值

Express js req.body 返回空

req.body 返回一个空对象 // 输出

req.body 没有返回提交的数据

如何将一组数据从客户端传递到 axios post 请求的 req.body

multer req.files undefined with axios in react