我正在调试一个Web应用程序,我无权修改它。我一直在使用这样的东西(在chrome dev控制台上,也尝试创建一个简单的扩展来运行代码):
(function(open) {
XMLHttpRequest.prototype.open = function() {
this.addEventListener("readystatechange", function() {
console.log('log stuff');
}, false);
open.apply(this, arguments);
};
})(XMLHttpRequest.prototype.open);
出于记录目的,但我遇到了问题。代码的一部分看起来像这样:
var worker = new Worker('js/worker.js');
worker.addEventListener('message', function(data) {
doStuffWith(data)
}, false);
worker.js是一个简单的xhr postMessage()
get请求的结果如下:
var xhr = new XMLHttpRequest();
xhr.open('GET', '/url', false);
xhr.send();
var msg = JSON.parse(xhr.responseText);
postMessage(msg);
问题是第一段代码没有捕获此请求。
我怎样才能拦截"它将它添加到我的日志中?