Bug:Fix file validation issue
[vnfsdk/refrepo.git] / vnfmarket / src / main / webapp / vnfmarket / node_modules / connect / lib / middleware / json.js
1
2 /*!
3  * Connect - json
4  * Copyright(c) 2010 Sencha Inc.
5  * Copyright(c) 2011 TJ Holowaychuk
6  * MIT Licensed
7  */
8
9 /**
10  * Module dependencies.
11  */
12
13 var bodyParser = require('body-parser');
14 var deprecate = require('depd')('connect');
15 var merge = require('utils-merge');
16
17 /**
18  * JSON:
19  *
20  * See [body-parser](https://github.com/expressjs/body-parser)
21  *
22  * @param {Object} options
23  * @return {Function}
24  * @api public
25  */
26
27 module.exports = function json(options) {
28   var opts = merge({
29     limit: '1mb',
30     type: ['application/json', 'application/*+json']
31   }, options);
32
33   // back-compat verify function
34   if (typeof opts.verify === 'function') {
35     deprecate('json.verify: use body-parser module for verify');
36     opts.verify = convertVerify(opts.verify);
37   }
38
39   return bodyParser.json(opts);
40 };
41
42 /**
43  * Convert old verify signature to body-parser version.
44  *
45  * @param {Function} verify
46  * @return {Function}
47  * @api private
48  */
49
50 function convertVerify(verify) {
51   return function (req, res, buf, encoding) {
52     verify(req, res, buf.toString(encoding));
53   };
54 }