猿问

使用nodejs做跨域代理服务器,请求数据后,应该怎么传递给html页面

我现在遇到一个问题,我使用nodejs做跨域代理服务器,接口地址是不断变化的,我希望可以在html页面上输入接口的地址,然后在server.js文件中读取这个接口的数据,返回给html页面,请问我的html页面应该怎么写?


问题1

var myUrl = "http://tianjinshuxie.net/interfaces/abc.php";

我的这个url地址是不断变化的


问题2

http://127.0.0.1:8989/


这个地址上的数据应该怎么传递给我的项目里


server.js 文件


var http = require("http");

var url = require("url");

var qs = require("querystring");


//用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 = "http://tianjinshuxie.net/interfaces/abc.php";

//创建变量保存请求到的数据

    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...");

    }

});


千巷猫影
浏览 988回答 2
2回答

偶然的你

访问server.js,node帮你取到数据,然后返回给前端
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答