是否有可能创建一个Javascript并将其包含在网页中,该JS的功能是“捕获”所有GET请求或任何其他Ajax调用页?要么登录它,要么只是将它显示在警报框中。用Javascript拦截或捕获Ajax调用
将执行GET或Ajax调用的“其他Javacript”是任意的。我的意思是,我无法控制它是什么。
一旦被捕获,我需要检查哪个Javascript执行哪些GET或Ajax调用。
这可能吗?
是否有可能创建一个Javascript并将其包含在网页中,该JS的功能是“捕获”所有GET请求或任何其他Ajax调用页?要么登录它,要么只是将它显示在警报框中。用Javascript拦截或捕获Ajax调用
将执行GET或Ajax调用的“其他Javacript”是任意的。我的意思是,我无法控制它是什么。
一旦被捕获,我需要检查哪个Javascript执行哪些GET或Ajax调用。
这可能吗?
试试这个片段。它扩展了send
函数,以便在真正发送之前或之后执行某些操作。
XMLHttpRequest.prototype.reallySend = XMLHttpRequest.prototype.send;
XMLHttpRequest.prototype.send = function(body) {
// Do something...
this.reallySend(body);
};
var req = new XMLHttpRequest();
req.open("GET", "any.html", true);
req.send(null);
很酷的工作。 – xybrek 2012-03-29 08:49:59
这工作,我能够赶上Ajax调用,但是我没有抓到HTML的请求,我期待可能是因为它不是Ajax调用,你知道如何截取JavaScript引起的GET事件吗? – xybrek 2012-03-29 08:53:11
@xybrek你可以使用这种方法作为模板。你需要做的就是熟练使用javascript必须提出的每种方法(例如Image对象,'
你需要调试吗?所有主流浏览器都内置此功能。 – Yoshi 2012-03-29 07:28:46
现在,因为它似乎不容易使用简单的Javascript也许我可以使用浏览器插件,但Firebug不显示哪个Javascript启动GET方法,例如... – xybrek 2012-03-29 07:32:28
...但我的要求不是真正用于调试,而是用于实际应用功能。 – xybrek 2012-03-29 08:44:58