无法在获取后获取req对象

时间:2018-08-26 17:52:15

标签: node.js reactjs express cors fetch

node.js程序的代码:

var express = require('express');
var path = require('path');
var bodyParser = require('body-parser')
var app = express();
var cors = require('cors');
app.use(express.static(path.join(__dirname,'../client/' ,'build')));
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.use(cors());
app.post('/',(req,res)=>{
    console.log(req.body); //always empty
})

我认为node.js程序是正确的,但是每次前端应用程序访问URL req.body时始终为空,我也不知道为什么。

我的前端应用程序是使用React.js构建的,下面是我称为fetch()的代码。

fetch('/', {
    method: 'POST',
    body: JSON.stringify({
        task: details
    }),
    headers: {
        "Content-Type": "application/json"
    }
})

1 个答案:

答案 0 :(得分:1)

尝试更改几件事:

在您的前端:

fetch('/', { 
method: 'POST', 
body: { task: details },
headers: { "Content-Type": "application/json" }
 })

在您的服务器端:

app.post('/',(req,res)=>{ 
    console.log(JSON.stringify(req.body)); //always empty 
})

这应该可行。