當我的程式像這樣時,以前的中間件可以向 Postman 發送字串“Hello world”。
app.use((req, res, next) => {
console.log(req.body);
res.send('Hello world');
next();
})
app.use(express.json());
})
但是我不知道為什么當我將測驗中間件放在 app.use(express.json()) 之后時,它什么都不發送。我使用郵遞員發送帶有 json 型別原始資料的 post 請求。
uj5u.com熱心網友回復:
您必須在任何路由處理程式之前宣告該中間件express.json,因為該中間件負責決議請求的資訊并放入請求正文屬性中,然后它會自動呼叫 next 繼續執行流程。如果您將該中間件放在請求的末尾,則在決議資訊之后將呼叫 next ,因為您沒有更多的中間件來管理您的服務器掛起的執行流程。
uj5u.com熱心網友回復:
好的,我剛剛發現,因為我的 POSTMAN POST 請求使用帶有單引號而不是雙引號的原始 json。我把它改成了雙引號,所以它起作用了。謝謝。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/417874.html
標籤:
