Я использую экспресс, а также парсер тела в своем приложении.
app.use(bodyParser.urlencoded({ extended: false }));
Но что означает «расширенный» в Express 4.0?
я нашел это
extended - parse extended syntax with the qs module.
Однако я до сих пор не могу понять, что это значит.
node.js
express
body-parser
KimCrab
источник
источник
Наоборот,
Различия между парсингом `qs library` и` querystring library`
Библиотека qs позволяет создавать вложенный объект из строки запроса.
var qs = require("qs") var result = qs.parse("person[name]=bobby&person[age]=3") console.log(result) // { person: { name: 'bobby', age: '3' } }
Библиотека строки запроса не поддерживает создание вложенного объекта из строки запроса.
var queryString = require("query-string") var result = queryString.parse("person[name]=bobby&person[age]=3") console.log(result) // { 'person[age]': '3', 'person[name]': 'bobby' }
Библиотека qs не отфильтровывает '?' из строки запроса.
var qs = require("qs") var result = qs.parse("?a=b") console.log(result) // { '?a': 'b' }
библиотека строки запроса будет отфильтровывать '?' из строки запроса.
var queryString = require("query-string") var result = queryString.parse("?a=b") console.log(result) // { a: 'b' }
app.use(bodyParser.urlencoded({ extended: true })) // for parsing application/x-www-form-urlencoded
Для получения дополнительной информации вы можете обратиться к ответу Леонида Бесчастного и npm сравнить qs vs query-string .
источник
Из документов Body-Parser:
А также
В основном расширенный позволяет анализировать полные объекты.
Парсер тела: URL-адрес закодирован
источник