gpt4 book ai didi

javascript - 覆盖 XMLHttpRequest 的发送方法

转载 作者:数据小太阳 更新时间:2023-10-29 03:58:30 27 4
gpt4 key购买 nike

我正在尝试通过覆盖 XMLHttpRequest.send 函数来记录(并稍后修改)XMLHttpRequest 发送到服务器的数据。

我的函数将数据正确地记录到控制台,但是请求没有完成,因此浏览器一直在无限期地等待响应。

知道代码有什么问题吗?

XMLHttpRequest.prototype.realSend = XMLHttpRequest.prototype.send;
var newSend = function(vData) { console.log("data: " + vData); realSend(vData); };
XMLHttpRequest.prototype.send = newSend;

最佳答案

你忘记了这个:

this.realSend(vData);

但是,您不需要向原型(prototype)添加新方法:

var send = XMLHttpRequest.prototype.send;

XMLHttpRequest.prototype.send = function(data) {
send.call(this, data);
}

使用闭包,您还可以避免流氓变量:

!function(send){
XMLHttpRequest.prototype.send = function (data) {
send.call(this, data);
}
}(XMLHttpRequest.prototype.send);

关于javascript - 覆盖 XMLHttpRequest 的发送方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9700904/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com