| Leo Repp | 58b9f11 | 2021-11-22 11:57:47 +0100 | [diff] [blame^] | 1 | var jsonParse = require("safe-json-parse") |
| 2 | |
| 3 | var body = require("./index.js") |
| 4 | var parseArguments = require("./parse-arguments.js") |
| 5 | |
| 6 | module.exports = jsonBody |
| 7 | |
| 8 | function jsonBody(req, res, opts, callback) { |
| 9 | var args = parseArguments(req, res, opts, callback) |
| 10 | req = args.req |
| 11 | res = args.res |
| 12 | opts = args.opts |
| 13 | callback = args.callback |
| 14 | |
| 15 | if (!callback) { |
| 16 | return jsonBody.bind(null, req, res, opts) |
| 17 | } |
| 18 | |
| 19 | var parse = opts.JSON ? opts.JSON.parse : jsonParse |
| 20 | var reviver = opts.reviver || null |
| 21 | |
| 22 | body(req, res, opts, function (err, body) { |
| 23 | if (err) { |
| 24 | return callback(err) |
| 25 | } |
| 26 | |
| 27 | parse(body, reviver, callback) |
| 28 | }) |
| 29 | } |