34 lines
775 B
JavaScript
34 lines
775 B
JavaScript
|
var querystringParse = require("querystring").parse
|
||
|
|
||
|
var body = require("./index.js")
|
||
|
var parseArguments = require("./parse-arguments.js")
|
||
|
|
||
|
module.exports = formBody
|
||
|
|
||
|
function formBody(req, res, opts, callback) {
|
||
|
var args = parseArguments(req, res, opts, callback)
|
||
|
req = args.req
|
||
|
res = args.res
|
||
|
opts = args.opts
|
||
|
callback = args.callback
|
||
|
|
||
|
if (!callback) {
|
||
|
return formBody.bind(null, req, res, opts)
|
||
|
}
|
||
|
|
||
|
var parse = opts.querystring ?
|
||
|
opts.querystring.parse : defaultQueryStringParse
|
||
|
|
||
|
body(req, res, opts, function (err, body) {
|
||
|
if (err) {
|
||
|
return callback(err)
|
||
|
}
|
||
|
|
||
|
parse(body, callback)
|
||
|
})
|
||
|
}
|
||
|
|
||
|
function defaultQueryStringParse(str, callback) {
|
||
|
callback(null, querystringParse(str))
|
||
|
}
|