84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
走同样的路,发现不同的人生
等等,我翻車了
它是先按照你在 use 時候給定的 options 進行格式化約束的,然後先按照 json 來轉一次,沒出錯了再接著調用 urlencoded 進行表單其他內容進行接收和格式化。
其中json轉的時候默認按照 var type = opts.type || 'application/json' 這個 content-type 來進行格式指定檢查請求頭是不是json,如果不是則默認一個空,不然進行 json 的格式化,然後就是後面的 urlencoded 邏輯了
var type = opts.type || 'application/json'
原始碼如下https://github.com/expressjs/...
function bodyParser (options) { var opts = {} // exclude type option if (options) { for (var prop in options) { if (prop !== 'type') { opts[prop] = options[prop] } } } var _urlencoded = exports.urlencoded(opts) var _json = exports.json(opts) return function bodyParser (req, res, next) { _json(req, res, function (err) { if (err) return next(err) _urlencoded(req, res, next) }) } }
等等,我翻車了
它是先按照你在 use 時候給定的 options 進行格式化約束的,然後先按照 json 來轉一次,沒出錯了再接著調用 urlencoded 進行表單其他內容進行接收和格式化。
其中json轉的時候默認按照
var type = opts.type || 'application/json'
這個 content-type 來進行格式指定檢查請求頭是不是json,如果不是則默認一個空,不然進行 json 的格式化,然後就是後面的 urlencoded 邏輯了原始碼如下
https://github.com/expressjs/...