NodeJS收发GET和POST请求的示例代码

网络营销 2025-04-16 10:34www.168986.cn短视频营销

本文将向你展示如何在NodeJS中收发GET和POST请求,同时提供一个参考示例。这些示例代码由长沙网络推广分享,具有实际应用价值。

一、使用express框架接收请求

在express框架中,你可以通过app.get()方法接收GET请求。下面是一个简单的示例:

```javascript

var express = require('express');

var app = express();

app.get('/', function(req, res) {

var url = req.query.url;

var name = req.query.name;

console.log(url, name);

res.send('Received GET request with url: ' + url + ' and name: ' + name);

});

app.listen(3000, function () {

console.log('Example app listening on port 3000!');

});

```

二、接收GET请求

在NodeJS中,你可以通过http模块接收GET请求。下面是一个简单的示例:

```javascript

var http = require('http');

var url = require('url');

http.createServer(function(req, res) {

res.writeHeader(200, {'Content-Type':'text/javascript;charset=UTF-8'});

var params = url.parse(req.url, true).query;

res.write("网站名" + params.name + "");

res.write("网站 URL" + params.url + "");

res.end();

}).listen(3000);

```

当你通过浏览器访问

网站名321

网站 URL123

三、发送GET请求

在NodeJS中,你可以使用http模块发送GET请求。下面是一个简单的示例:

```javascript

var http = require('http');

var qs = require('querystring');

var data = { a: 123, time: new Date().getTime()};

var content = qs.stringify(data);

var options = {

hostname: '127.0.0.1',

port: 10086,

path: '/pay/pay_callback?' + content,

method: 'GET'

};

var req = http.request(options, function (res) {

console.log('STATUS: ' + res.statusCode);

console.log('HEADERS: ' + JSON.stringify(res.headers));

res.setEncoding('utf8');

res.on('data', function (chunk) {

console.log('BODY: ' + chunk);

});

});

req.on('error', function (e) { console.log('problem with request: ' + e.message); });

req.end();

```

四、接收POST请求

Node.js中的简易表单处理:从提交到响应的旅程

在Node.js的世界里,处理HTTP请求就像烹饪一道美食。当我们接收到一个请求时,我们需要逐步处理它,就像准备食材、调料和烹饪步骤一样。今天,我们将一个简单的Node.js服务器,它处理一个基本的表单提交。

让我们创建一个简单的HTML表单。我们的表单将包含两个字段:网站名和网站URL。当用户在表单中填写信息并点击提交时,数据将被发送到我们的Node.js服务器。

在Node.js中,我们首先引入了http和querystring模块。然后,我们创建了一个HTTP服务器来处理请求和响应。每当接收到一个请求时,我们会暂存请求体的信息。由于我们使用的是流式处理,我们需要监听'data'事件来逐步接收请求体的数据。在这个过程中,我们需要使用+=来累加数据,因为如果我们直接赋值给body,那么在请求favicon.ico时,body会被重置为{}。

当'end'事件触发时,我们知道请求已经完成。这时,我们会使用querystring.parse将请求体为一个对象数组。然后,我们可以通过body.name和body.url来访问提交的数据。

现在,让我们看看服务器如何处理这些请求。如果提交了有效的数据(即body中有name和url),服务器将返回提交的数据。否则,它将返回原始的表单HTML。

这里有一个问题需要注意。每次请求都会触发'end'事件,因为浏览器会请求favicon.ico。这意味着我们需要确保我们的代码能够正确处理这种情况,避免不必要的错误或混淆。

当我们设置响应头部信息时,我们需要指定内容的类型。在这种情况下,我们设置Content-Type为'text/html',这意味着浏览器将使用HTML器来处理响应的内容。如果我们设置为'text/plain',浏览器将不会进行任何特殊处理。

当你打开浏览器并访问我们的服务器(在localhost的3000端口),你将看到一个简单的表单。填写信息并提交后,服务器将返回你提交的数据。如果没有填写任何信息并提交了表单,你将再次看到原始的表单页面。

五、发起POST请求之旅

在JavaScript的广阔世界中,我们借助强大的http模块和querystring库,开启一段POST请求的冒险之旅。想象一下我们正在构建一个神秘的信件,准备将它发送到远方的服务器。

我们引入必要的模块:http和querystring。然后,我们构造了一个包含姓名、和地址信息的对象。我们将这个对象转化为字符串格式,准备将其发送出去。

接下来,我们设定了发送的路线——即我们的请求选项。其中包括了目标主机名、路径(目标页面)、请求方法(POST),以及请求头信息,其中包括内容类型和内容的长度。这里的内容类型被设定为 'application/x--form-urlendcoded',这是标准的表单编码格式。

然后,我们创建了一个HTTP请求对象,并开始执行我们的计划——向服务器发送请求。在接收到服务器的响应后,我们设定了编码方式并监听数据事件。当接收到数据时,我们在控制台打印出这些数据,这些数据可能是一段HTML代码。

我们将之前构造的信息写入请求中,并结束这次请求旅程。整个过程就像给远方的服务器发送一封精心准备的信件,期待着它的回应。

以上就是我们的全部内容,希望这篇文章能为大家的学习带来帮助,也希望大家多多关注我们的博客——狼蚁SEO。让我们一起编程的奥秘,享受技术带来的乐趣!

(呈现结束,由cambrian渲染主体部分)

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by