node.js搭建代理服务器请求数据

Posted bestjarvan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了node.js搭建代理服务器请求数据相关的知识,希望对你有一定的参考价值。

1、引入node.js中的模块

1 var http = require("http");
2 var url = require("url");
3 var qs = require("querystring");

2、创建服务器

//用node中的http创建服务器 并传入两个形参
http.createServer(function(req , res) {
//设置请求头  允许所有域名访问 解决跨域
     res.setHeader("Access-Control-Allow-Origin" , "*");

//获取地址中的参数
var query = url.parse(req.url).query;

//用qs模块的方法  把地址中的参数转变成对象 方便获取
var queryObj = qs.parse(query);
//获取前端传来的myUrl=后面的内容  GET方式传入的数据
var myUrl = queryObj.myUrl;
//创建变量保存请求到的数据
var data = "";

//开始请求数据  http.get()方法
http.get(myUrl,function (request) {
//监听myUrl地址的请求过程
//设置编码格式
request.setEncoding("utf8");

//数据传输过程中会不断触发data信号
        request.on("data", function (response) {
            data += response;
        });

//当数据传输结束触发end
        request.on("end" , function () {
//把data数据返回前端
            res.end(data);
        });
}).on("error" , function () {
       console.log("请求myUrl地址出错!");
});
}).listen(8989,function(err){
       if(!err){
             console.log("服务器启动成功,正在监听8989...");
        }    
});

3、启动服务器

打开配置的nodejs所在文件夹,Shift+右键空白处 打开cmd终端

输入node 服务器名.js开启服务器

 





以上是关于node.js搭建代理服务器请求数据的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Node.js 通过代理发送 HTTP/2 请求?

通过套接字连接将 https 代理请求传递到命名管道(node.js)

简述react.js+node.js+mysql应用架构

如何在 node.js 中创建一个简单的 http 代理?

node.js状态码

基于 Unix Socket 的可靠 Node.js HTTP 代理实现(支持 WebSocket 协议)