[英]Get POST request body with express and fetch
我是服務器端開發的新手。
我正在嘗試設置一個可以接收帖子的 node.js 服務器。
我的客戶端-服務器代碼發送 post 請求:
function post(){
fetch('/clicked', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({a: 1, b: 'Text'})
})
.then(function(response){
if(response.ok){
console.log('POST success.');
return;
}
throw new Error('POST failed.');
})
.catch(function(error){
console.log(error);
});
}
我的 Node.js 服務器收到它:
const express = require('express');
const app = express();
app.use(express.json());
app.post('/clicked', (req, res) => {
console.log(req.a);
console.log(req.b);
console.log(req.body);
res.sendStatus(201);
})
但是,我的服務器控制台記錄了所有undefined
。
我應該怎么做才能收到我的 POST 請求正文?
嘗試在應用程序中設置express.json()
:
const express = require('express');
const app = express();
app.use(express.json())
app.post('/clicked', (req, res) => {
console.log(req.a);
console.log(req.b);
console.log(req.body);
res.sendStatus(201);
});
在處理發布請求之前添加它。
app.use(require('body-parser').json());
body-parser 所做的是,它將我們傳遞給 API 的所有信息添加到“request.body”object。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.