ElM*_*sas 8 javascript node.js express
我正在使用 express 来设置 API,我遇到了这行代码: app.use(express.json( { extended: false } ));
我看过 express 的文档,但是我没有找到这个方法,是文档缺失还是我遗漏了什么?
答案来自于查看实际的 Express 和主体解析器代码......
如果您查看此处express.json()该方法的 Express 代码,您会发现它是从 body-parser 模块直接传递该方法。.json()
// from express.js
exports.json = bodyParser.json;
Run Code Online (Sandbox Code Playgroud)
因此,如果您随后查看 body-parser 文档,就会发现没有任何extended中间件选项body-parser.json()。
正如您所发现的,该extended选项已记录在body-parser.urlencoded()中间件中。但是,由于这与中间件方法不同.json(),因此这段代码似乎被错误地使用了extended中间件的选项.json()。
如果您查看中间件的代码body-parser.json()extended,您将发现代码中根本没有对该选项的引用。
因此,它似乎是一个在您显示的代码中错误传递的选项,随后被 express/body-parser json 中间件忽略。