簡體   English   中英

無法從請求正文中檢索值

[英]Unable to retrive value from body of request

我像這樣在郵遞員中傳遞api請求

{
    "q":"delhi ncr"
}

我的 api 看起來像這樣

app.get('/locations', async (req, res) => {
  const query = req.body.q;
  console.log(req.body);
  const data = await zomato.cities({ q: String(query),count: 1 })

  res.send(data);
}

控制台日志返回{}我不知道我哪里出錯了。 如果我將一些字符串值硬編碼到 q 中,它可以工作,但不是這樣。

郵遞員請求

您需要使用 body-parser npm 模塊來解析正文。 你在用嗎? 還將擴展的 urlencoded 選項設置為 true。

更新:

由於現在附上了屏幕截圖,我看到您在 POSTMAN 中使用原始 JSON 作為正文,

所以使用 app.use(express.json());

或者 app.use(body-parser.json()

此外,GET 請求通常在 URL 中傳遞參數,因此也許您可以避免使用正文。 僅當您要創建新數據時才使用 POST 請求,而不是根據傳遞給端點的參數返回數據。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM