Express.js express.json()函数
express.json()函数是 Express 中内置的中间件函数。它使用 JSON 有效负载解析传入的请求,并基于body-parser 。
句法:
express.json( [options] )
参数: options 参数具有各种属性,例如 inflate、limit、type 等。
返回值:它返回一个对象。
express模块的安装:
- 您可以访问安装 express 模块的链接。您可以使用此命令安装此软件包。
npm install express
- 安装 express 模块后,您可以使用命令在命令提示符下检查您的 express 版本。
npm version express
- 之后,您可以创建一个文件夹并添加一个文件,例如 index.js。要运行此文件,您需要运行以下命令。
node index.js
示例 1:文件名:index.js
var express = require('express');
var app = express();
var PORT = 3000;
app.use(express.json());
app.post('/', function (req, res) {
console.log(req.body.name)
res.end();
})
app.listen(PORT, function(err){
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});
运行程序的步骤:
- 项目结构将如下所示:
- 确保您已使用以下命令安装express模块:
npm install express
- 使用以下命令运行 index.js 文件:
node index.js
输出:
Server listening on PORT 3000
- 现在向http://localhost:3000/发出 POST 请求,标头设置为'content-type: application/json'和正文{“name”:”GeeksforGeeks”} ,然后您将在控制台上看到以下输出:
Server listening on PORT 3000 GeeksforGeeks
示例 2:文件名:index.js
var express = require('express');
var app = express();
var PORT = 3000;
// Without this middleware
// app.use(express.json());
app.post('/', function (req, res) {
console.log(req.body.name)
res.end();
})
app.listen(PORT, function(err){
if (err) console.log(err);
console.log("Server listening on PORT", PORT);
});
使用以下命令运行 index.js 文件:
node index.js
现在向http://localhost:3000/发出 POST 请求,标头设置为'content-type: application/json'和正文{“name”:”GeeksforGeeks”} ,然后您将在控制台上看到以下输出:
Server listening on PORT 3000
TypeError: Cannot read property 'name' of undefined
参考: https://expressjs.com/en/4x/api.html#express.json