一、准备工作
在学习Node.js Express路由时,我们需要事先安装好Node.js和Express,并学会如何启动和运行一个Node.js Express服务器。
二、路由基本概念
路由是指在Web应用程序中识别特定状态和参数传递的url并且提供相应的响应或页面的过程。在Node.js Express中,路由是由路由模块进行定义和配置。
三、req.query方法
req.query是Express提供的一个将查询字符串解析为对象的方法。它可以很方便的获取客户端通过HTTP GET方法传递的参数。
下面是一个示例,客户端向服务端发送GET请求,获取查询参数:
// 导入express模块
const express = require('express');
// 实例化express应用程序
const app = express();
// GET endpoint
app.get('/users', function(req, res){
console.log(req.query.name); // logs out "John"
});
// 启动应用程序
app.listen(3000, function(){
console.log('Server running...');
});
如果我们通过以下URL发出GET请求,则会将查询参数传递给服务端:
http://localhost:3000/users?name=John
四、req.body方法
req.body是Express提供的一个解析POST请求体的方法。必须将请求体解析为一个对象,才能处理请求。
下面是一个示例,客户端向服务端发送POST请求,传递参数:
// 导入express模块
const express = require('express');
// 引入body-parser
const bodyParser = require('body-parser');
// 实例化express应用程序
const app = express();
// configure body-parser
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
// POST endpoint
app.post('/users', function(req, res){
console.log(req.body.name); // logs out "John"
});
// 启动应用程序
app.listen(3000, function(){
console.log('Server running...');
});
客户端通过以下方式向服务端发送POST请求:
// example POST request
fetch('http://localhost:3000/users', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({name: 'John'})
});
这样,服务器就会解析请求体的JSON数据并且输出控制台日志。
五、总结
在Node.js Express路由中,req.query和req.body方法是非常重要的,它们帮助我们收到客户端传门和发送响应之间处理数据传输的复杂性。在我们的代码中准确使用它们能够在服务器端上创建强大和可靠的接口。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:nodeJS express路由学习req.body与req.query方法实例详解 - Python技术站