經常使用APIexpress
1. bodyParser.text(options) 解析文本格式json
返回一個僅處理字符串格式處理的中間件。其後的全部的req.body中將會是一個字符串值。api
1. defaultCharset - 若是Content-Type後沒有指定編碼時,使用此編碼。默認爲'utf-8'app 2. inflate - 設置爲true時,deflate壓縮數據會被解壓縮;設置爲true時,deflate壓縮數據會被拒絕。默認爲true。函數 3. limit - 設置請求的最大數據量。默認爲'100kb'post 4. type - 該選項用於設置爲指定MIME類型的數據使用當前解析中間件。這個選項能夠是一個函數或是字符串,當是字符串是會使用type-is來查找MIMI類型;當爲函數是,中間件會經過fn(req)來獲取實際值。默認爲application/octet-stream。大數據 5. verify - 這個選項僅在verify(req, res, buf, encoding)時受支持ui |
2. bodyParser.urlencoded(options) 解析UTF-8的編碼的數據。返回一個處理urlencoded數據的中間件。編碼
option可選值url
1. extended - 當設置爲false時,會使用querystring庫解析URL編碼的數據;當設置爲true時,會使用qs庫解析URL編碼的數據。後沒有指定編碼時,使用此編碼。默認爲true 2. inflate - 設置爲true時,deflate壓縮數據會被解壓縮;設置爲true時,deflate壓縮數據會被拒絕。默認爲true。 3. limit - 設置請求的最大數據量。默認爲'100kb' 4. parameterLimit - 用於設置URL編碼值的最大數據。默認爲1000 5. type - 該選項用於設置爲指定MIME類型的數據使用當前解析中間件。這個選項能夠是一個函數或是字符串,當是字符串是會使用type-is來查找MIMI類型;當爲函數是,中間件會經過fn(req)來獲取實際值。默認爲application/octet-stream。 6. verify - 這個選項僅在verify(req, res, buf, encoding)時受支持 |
代碼示例:
var express = require('express') varbodyParser = require('body-parser') var app = express()
// create application/json parser varjsonParser = bodyParser.json() // create application/x-www-form-urlencoded parser varurlencodedParser = bodyParser.urlencoded({ extended: false })
// POST /home 獲取 urlencoded bodies app.post('/home', urlencodedParser, function (req, res) { if (!req.body) return res.sendStatus(400) res.send('welcome, ' + req.body.username) })
// POST /api/users 獲取 JSON bodies app.post('/about', jsonParser, function (req, res) { if (!req.body) return res.sendStatus(400) res.send('welcome ****, ' + req.body.username) });
app.listen(3000); |
圖片一
圖片二