在本篇文章中,我們將介紹如何使用 Express 擷取 POST 查詢參數。
POST 查詢參數通常是由 HTTP 客戶端傳送的,例如表單提交或是進行 POST 請求時傳送的資料。
如何存取這些資料呢?
如果資料是以 JSON 格式傳送,使用 Content-Type: application/json
,你需要使用 express.json()
中介軟體:
const express = require('express')
const app = express()
app.use(express.json())
如果資料是以 Content-Type: application/x-www-form-urlencoded
格式傳送,你需要使用 express.urlencoded()
中介軟體:
const express = require('express')
const app = express()
app.use(express.urlencoded({ extended: true }))
在兩種情況下,你可以透過 Request.body
來存取資料:
app.post('/form', (req, res) => {
const name = req.body.name
})
需要注意的是,舊版的 Express 需要使用 body-parser
模組來處理 POST 資料,但從 Express 4.16 版本(於2017年9月發佈)開始,已經不再需要使用該模組。