Javascript 块XMLHTTP请求

Javascript 块XMLHTTP请求,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我正在处理一个场景,在这个场景中,我需要根据某些条件取消第三方库请求,然后在条件评估为false时取消阻止。假设第三方URL正在加载以下URL: https://cdn-thirdparty.com/... 现在,一旦加载,它将捕获用户在应用程序上的单击并将数据作为另一个URL发送: https://cdn-info-thirdpart.com/... 现在,假设我想阻止对URL的所有请求,其中包含thirdparty。。如何在香草Javascript中实现这一点… 注:我没有从代码中删除库

我正在处理一个场景,在这个场景中,我需要根据某些条件取消第三方库请求,然后在条件评估为false时取消阻止。假设第三方URL正在加载以下URL:

https://cdn-thirdparty.com/...
现在,一旦加载,它将捕获用户在应用程序上的单击并将数据作为另一个URL发送:

https://cdn-info-thirdpart.com/...
现在,假设我想阻止对URL的所有请求,其中包含
thirdparty
。。如何在香草Javascript中实现这一点…
注:我没有从代码中删除库的权限,相反,我必须做一些工程,根据某些条件(我们可以假设任何条件)阻止请求,然后在falsy条件下解除阻止

我试图截获所有XMLHttpRequest的代码如下,我确实得到了URL,调用方法,但我需要立即阻止它,然后取消阻止

let oldXHROpen = window.XMLHttpRequest.prototype.open;
 window.XMLHttpRequest.prototype.open = function(method, url, async, user, password) {
   // do something with the method, url and etc.
   this.addEventListener('load', function() {
  // do something with the response text
  console.log('load: ' + url, method);
});

 return oldXHROpen.apply(this, arguments);
}

以上代码的来源:

你就不能。。。在那种情况下不使用oldXHROpen方法?我不知道你的意思。。你能去试玩吗。。让我们尝试从应用程序中阻止google map API请求我的意思是,在代码中,您有
返回oldXHROpen.apply(这是参数)。如果不希望调用ajax请求,请不要这样做。但是请注意,如果第三方库改为使用fetch,fetch仍将运行。。。所以你也得把那件事搞定。是的。。我同意,但是那些第三方图书馆的电话没有被截获。。对于google analytics或google maps API调用的实例