Express.js req.body 属性
req.body属性包含在请求正文中提交的数据的键值对。默认情况下,它是未定义的,并且在您使用名为 body-parsing 的中间件时填充,例如 express.urlencoded() 或 express.json()。
句法:
req.body
参数:无参数。
返回值:对象
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;
// For parsing application/json
app.use(express.json());
// For parsing application/x-www-form-urlencoded
app.use(express.urlencoded({ extended: true }));
app.post('/profile', function (req, res) {
console.log(req.body);
res.send();
});
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/profile发出 POST 请求:
{ "title":"Greetings from GeeksforGeeks" }
现在您可以在控制台上看到以下输出:
Server listening on PORT 3000 { title: 'Greetings from GeeksforGeeks' }
示例 2:文件名:index.js
var express = require('express');
var app = express();
var PORT = 3000;
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.post('/signup', function (req, res) {
var data = req.body;
console.log("Name: ", data.name);
console.log("Age: ", data.age);
console.log("Gender: ", data.gender);
res.send();
});
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/signup发出 POST 请求:
{
"name": "Gourav",
"age": 13,
"gender":"Male"
}
输出:现在您将在控制台屏幕上看到以下输出:
Server listening on PORT 3000
Name: Gourav
Age: 13
Gender: Male
参考: https://expressjs.com/en/4x/api.html#req.body