重复http请求javascript

时间:2017-03-20 22:07:03

标签: javascript

是否可以复制在网页上发出的所有请求?在示例中,我需要在2个不同的服务器上拥有表单数据,但我无法更改生成响应的服务器上的后端。所以我无法将数据转发到第二台服务器。

这必须针对很多不同的页面进行。

我需要一个动态解决方案,它会复制客户提出的所有请求,因此我不需要更改每个网页,但只需添加一个脚本即可。

1 个答案:

答案 0 :(得分:0)

假设您已配置CORS。你可以做一个javascript函数,重复每个服务器的请求。例如:

function MultiXHR() {

    this.servers = ["http://server1.com", "http://server2.com"];
    this.contentType = "application/x-www-form-urlencoded";

    this.request = function(type, uri, data, onready){
        for (var server in this.servers){
            var httpRequest = new XMLHttpRequest();
            url = this.servers[server] + "/" + uri;
            console.log(url);
            httpRequest.open(type,url, true);
            httpRequest.onreadystatechange = onready;
            httpRequest.setRequestHeader("Content-type", this.contentType);
            httpRequest.send(data);
        }
    }
}

然后你可以像这样使用这个对象:

m = new MultiXHR();
m.request('POST',"example","data=data");