1. 程式人生 > >express中的路由規則及獲取請求引數方法

express中的路由規則及獲取請求引數方法

express中常見的路由規則

主要使用的路由規則是get和post兩種,即

var express = require('express');
var app = express();
app.get();      // get和post兩種請求方式
app.post();

app.get()和app.post()的第一個引數為請求路徑,第二個引數為處理請求的回撥函式;回撥函式有兩個引數,分別為req和res,代表請求資訊和響應資訊。

獲取請求路徑和請求體中的各種引數

路徑請求及對應獲取請求路徑的形式有以下幾種:
(1)req.query (查詢get請求中的引數)

GET /shoes?order=desc&shoe[type]=converse&shoe[color]=blue
req.query.order
// =>'desc'

req,query.shoe.type
// =>'converse'

(2)req.body (查詢請求體)

// POST user[name]=dby&user[email][email protected]
req.body.user.name
// =>'dby'

(3)req.params

// GET /file/javascript/jquery.js
req.params
[0] // => 'javascript/jquery.js'

(4)req.params(name)

// ?name=tobi
req.params(name)
// => 'tobi'

// POST name=tobi
req.param('name')
// => 'tobi'

由上述程式碼可以很明顯的看出各種獲取路徑的含義:

  • req.query: 處理get請求,獲取get請求的請求引數
  • req.params: 處理/:xxx形式的get或者post請求,獲取請求引數
  • req.body: 處理post請求,獲取post了請求的請求體
  • req.param(): 處理get和post請求,但查詢優先順序
    由高到低為req.params->req.body->req.query

注:路徑規則支援正則表示式。