Node.js Can';在我的POST请求中找不到请求正文

Node.js Can';在我的POST请求中找不到请求正文,node.js,api,express,Node.js,Api,Express,我正在使用Node和Express来处理后端请求。我从前端打电话: const newData = {id: sub, first_name: given_name, last_name: family_name, email: email} const requestOptions = { method: 'POST', headers: { 'Content-Type': 'application/jso

我正在使用Node和Express来处理后端请求。我从前端打电话:

          const newData = {id: sub, first_name: given_name, last_name: family_name, email: email}
          const requestOptions = {
            method: 'POST',
            headers: { 'Content-Type': 'application/json' },
            body: JSON.stringify(newData)
        }
          fetch(`/add`, requestOptions)
          .then(res => res.json())
          .then(data => console.log(data))
          .catch(console.log('error2'));
由我的“/添加”端点拾取。现在我只想
console.log
请求主体,因此我的终点是:

router.post('/add', (req, res) => {
  res.setHeader('Access-Control-Allow-Origin', 'http://localhost:3000');

  console.log(req.body, 'hit')
})
但是,服务器控制台日志显示为
{}'hit'
。当我使用网络选项卡时,我可以看到请求有一个有效负载,其中包含
id、名字、姓氏和电子邮件

谁能告诉我,我在把数据输入服务器时遗漏了什么

另外,我的服务器是用
主体解析器设置的,如下所示:

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

在发送
应用程序/json
内容类型时,应该使用
bodyParser.json()
而不是
bodyParser.urlcoded({extended:false})

例:

constbodyparser=require('body-parser');
常量app=express();
app.use(bodyParser.json())

在发送
应用程序/json
内容类型时,应使用
bodyParser.json()
而不是
bodyParser.urlcoded({extended:false})

例:

constbodyparser=require('body-parser');
常量app=express();
app.use(bodyParser.json())