Node.js Can';在我的POST请求中找不到请求正文
我正在使用Node和Express来处理后端请求。我从前端打电话: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
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())