NodeJS GET与POST请求实战及Express框架示例

9 下载量 189 浏览量 更新于2024-08-30 1 收藏 124KB PDF 举报
本文主要介绍了如何在Node.js中使用Express框架以及基本的HTTP库来发送和接收GET和POST请求。首先,我们将通过Express框架处理GET请求的示例,展示如何从查询字符串中获取参数。 一、Express框架接收GET请求 在Express中,我们通常使用`app.get()`方法来设置路由,当接收到GET请求时执行相应的回调函数。在这个例子中,当访问根路径`'/``时,函数会解析`req.query`对象中的`url`和`name`参数,并打印出来。如: ```javascript app.get('/', function(req, res) { var url = req.query.url; var name = req.query.name; console.log('URL:', url); console.log('Name:', name); }); ``` 二、解析GET请求 对于不使用Express的情况,可以使用Node内置的`http`和`url`模块直接处理GET请求。`req.url`包含了完整的URL,通过`url.parse()`函数将其转换为对象,以便提取参数。例如: ```javascript var params = url.parse(req.url, true).query; res.write("网站名:" + params.name); res.write("网站URL:" + params.url); ``` 在这里,`true`参数让`url.parse()`解析查询字符串,将其转化为对象,方便后续操作。 三、发送GET请求 发送GET请求通常用于向服务器获取数据,Node.js中可以使用`http.request()`或第三方库如`querystring`配合`http`。例如,构建一个简单的GET请求: ```javascript var data = { a: 123, time: new Date().getTime() }; var content = qs.stringify(data); // 使用querystring库进行编码 var options = { hostname: '127.0.0.1', port: 10086, path: '/api', // 目标API路径 method: 'GET', headers: { 'Content-Type': 'application/x-www-form-urlencoded' } }; var req = http.request(options, function(res) { // 处理响应... }); req.end(content); ``` 这个示例展示了如何构造一个带有GET参数的请求,将数据编码为URL查询字符串后发送到指定的服务器端口。 总结起来,本文详细讲解了在Node.js中使用Express框架接收GET请求,以及如何通过原生`http`模块发送GET和POST请求。通过这些示例,读者可以理解如何在实际开发中处理HTTP请求,无论是作为客户端还是服务端。