1、req.body
2、req.query
3、req.params
一、req.body例子
body不是nodejs默認(rèn)提供的,你需要載入body-parser中間件才可以使用req.body,這個(gè)方法通常用來解析POST請求中的數(shù)據(jù)
<form action='/test' method='post'> <input type='text' name='name' value='lmw'> <input type='text' name='tel' value='1234567'> <input type='submit' value='Submit'> </form>app.post('/test', function(req, res) { console.log(req.body.name); console.log(req.body.tel);});二、req.query例子
有nodejs默認(rèn)提供,無需載入中間件,這個(gè)方法通常用來解析get請求中的數(shù)據(jù)
GET /test?name=lmw&tel=123456789app.get('/test', function(req, res) { console.log(req.query.name); console.log(req.query.tel);});三、req.query和req.body同時(shí)使有
<form action='/test?id=1' method='post'> <input type='text' name='name' value='lmw'> <input type='text' name='tel' value='123456789'> <input type='submit' value='Submit'> </form>app.post('/test', function(req, res) { console.log(req.query.id); console.log(req.body.name); console.log(req.body.tel);});四、req.params
另一種方法傳遞參數(shù)給服務(wù)器,但是這不算是傳統(tǒng)標(biāo)準(zhǔn)規(guī)范的做法,是屬于 HTTP Routing 的延伸應(yīng)用
GET /test/lmw/123456789app.get('/test/:name/:tel', function(req, res) { console.log(req.params.name); console.log(req.params.tel);});總結(jié):
req.query: 解析后的 url 中的 querystring,如 ?name=haha,req.query 的值為 {name: 'haha'}
req.params: 解析 url 中的占位符,如 /:name,訪問 /haha,req.params 的值為 {name: 'haha'}
req.body: 解析后請求體,需使用相關(guān)的模塊,如 body-parser,請求體為 {"name": "haha"},則 req.body 為 {name: 'haha'}
以上這篇node.js獲取參數(shù)的常用方法(總結(jié))就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VEVB武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選