有时在过载期间,某些网站无法加载。
我可以使用chrome.webRequest.onErrorOccurred api来检测此错误。
我想在这种情况下内容脚本根本不会运行,因此从后台页面向内容脚本发送消息是没有用的。
如何在网站正文中粘贴无法加载的通知?
也许从后台页面使用脚本执行?页面是否有正文内容?
答案 0 :(得分:0)
你在这里有几个选择。如果您正在使用chrome.webRequest.onErrorOccurred()
,但我建议您在发生错误时将标签重定向到错误页面,使用chrome.tabs.update()
。
例如:
chrome.webRequest.onErrorOccurred.addListener(function(details)
{
chrome.tabs.update(details.tabId, {url: "URL FOR AN ERROR PAGE"});
},
{types: ["main_frame"]});
这将重定向选项卡,当发出带有resourceType main_frame错误的网络请求时,会发生错误。
这里有一些你需要考虑的事情。您是否只想从具有main_frame类型的请求中捕获错误?如果没有,只需从事件中删除“类型”过滤器。
您需要考虑的另一件事是您要重定向到的页面。您可以在扩展程序中打包HTML文件,然后重定向到该文件。要生成错误页面的URL,您可以运行chrome.extension.getURL('customerrorpage.html')
。