[英]req.body is NULL {} on POST request
根據來自 POSTMAN 的發布請求,req.body 正在發送數據,但在提交表單時返回 { }。
這是我用作中間件的,
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false}));
但是bodyParser這個詞標有消息'bodyparser is deprecated'.ts(6385),該聲明在此處被標記為已棄用。
我嘗試使用,
app.use(express.json());
app.use(express.urlencoded({ extended: false}));
但它仍然在 req.body 上返回 { }
您確定在發送 POST 請求時使用了正確的標頭嗎?
對於.json()
解析,您的標頭應包含: Content-Type: application/json
對於urlencoded()
表單數據解析,您的標頭應包含: Content-Type: application/x-www-form-urlencoded
您還可以分享您的 Postman 請求的 CURL 嗎?
在注冊依賴項時請參閱編碼行,如果您注冊 express json,那應該在您的路線之前,所以它看起來像:
const express = require('express');
const app = express();
// middleware registered here
app.use(express.json());
// then your route
app.post('/someroute', async (req,res,next) => {
const { param1, param2 } = req.body;
try {
console.log(`${param1} and ${param2} written in terminal);
res.send('ok');
} catch (err) {
res.send('oopps');
}
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.