为了hook ‘XMLHttpRequest’ 找了很多方法 都不是很理想,今天浏览帖子,无意间看到大神发的一个方法,测试了下非常好用,特记录一下,以备以后使用.
function hook(func) {
const origin = func;
return function () {
console.log(arguments);
return origin.apply(this, arguments);
}
}
XMLHttpRequest.prototype.send = hook(XMLHttpRequest.prototype.send);
XMLHttpRequest.prototype.open = hook(XMLHttpRequest.prototype.open);
这里的‘XMLHttpRequest.prototype.open’ 可以换成 你想要的hook的任意方法.