在没有“ ERR_BLOCKED_BY_CLIENT”的情况下收到onHeaders后,如何阻止Chrome WebExtension中的Web请求

时间:2019-02-03 15:35:36

标签: javascript google-chrome google-chrome-extension firefox-webextensions chrome-webrequest

我尝试将Firefox扩展程序移植到Chrome,但是webrequestonHeadersReceived的工作方式似乎并不相同。

当我使用时:

chrome.webRequest.onHeadersReceived.addListener(analyse,{urls: ["http://*/*", "https://*/*"]},["blocking", "responseHeaders"]);

正确调用了函数analyse,我可以分析响应头,如果函数返回"cancel: true",则在Firefox上该页面不会更新并且完美,但是在Chrome中,该页面是更新并显示著名消息

  

“对服务器的请求已被扩展程序阻止”

我的扩展程序的目标是管理某种类型的可下载文件。但是在Firefox中,如果单击“下载”,则页面不会移动,并且我可以显示一个面板让您选择要执行的操作,即使在我的面板中正确显示了Chrome,主页也会显示此错误消息并且我被迫单击“后退”以检索原始页面。

此外,在Firefox中,当请求被阻止一次时,它不会尝试再次获取该请求,而在Chrome浏览器中,显示错误消息的页面将尝试获取新的请求。

0 个答案:

没有答案