首頁 > web前端 > js教程 > 主體

如何存取 Node.js 和 Express POST 請求中的完整請求正文?

Susan Sarandon
發布: 2024-10-27 11:27:01
原創
133 人瀏覽過

How to Access the Full Request Body in Node.js and Express POST Requests?

訪問Node.js 和Express POST 請求中的完整請求正文

本文解決了在創建時訪問完整請求正文的問題使用完整請求正文的問題使用Node.js 和Express 框架進行POST 請求。

Express 和 bodyParser

提供的初始程式碼使用 Express.js 和express.bodyParser() 中介軟體進行解析請求正文。但是,嘗試使用 request.body 存取整個請求正文會導致錯誤。

Express v4.16 及以後

從 Express v4.16 開始,不再需要express.bodyParser()中間件。相反,開發者可以直接使用內建的JSON中間件express.json()。

透過在程式碼中加入app.use(express.json()),請求體將自動解析並存取作為請求處理程序中的 req.body。請記得在客戶端請求中設定適當的 Content-Type 標頭,例如 Content-Type: application/json。

Raw Request Body

存取原始請求不使用Express 中間件,開發者可以利用Node.js 的req.get('content-type') 和req .rawBody 方法。

例如:

app.post('/', function(req, res) {
  if (req.get('content-type') === 'application/json') {
    // Get the raw JSON body
    req.rawBody = '';
    req.on('data', (chunk) => { req.rawBody += chunk; });
    req.on('end', () => {
      // Do something with req.rawBody
    });
  }
});
登入後複製

這樣,可以直接存取和操作原始請求正文。

以上是如何存取 Node.js 和 Express POST 請求中的完整請求正文?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!