Error handling 背景js不';无法处理错误页面

Error handling 背景js不';无法处理错误页面,error-handling,google-chrome-extension,Error Handling,Google Chrome Extension,即使在错误页面(例如net::ERR\u NETWORK\u CHANGED)上,是否也可以加载后台js?我需要从扩展中保持与WS-server的持久性连接,但错误页面不加载后台js。因此,我失去了连接并可能重新启动它(因为这是一个自动工具,无法访问浏览器ui) 我找到的唯一解决方案是使用代理服务器自定义错误页面,并在其中加载后台js。断言“后台js在错误页面上不起作用”没有任何意义,因为如果使用,每个扩展2只有一个后台页面 因此,我假设您想要检测网络连接丢失,以便恢复web套接字。Chrome

即使在错误页面(例如net::ERR\u NETWORK\u CHANGED)上,是否也可以加载后台js?我需要从扩展中保持与WS-server的持久性连接,但错误页面不加载后台js。因此,我失去了连接并可能重新启动它(因为这是一个自动工具,无法访问浏览器ui)

我找到的唯一解决方案是使用代理服务器自定义错误页面,并在其中加载后台js。

断言“后台js在错误页面上不起作用”没有任何意义,因为如果使用,每个扩展2只有一个后台页面

因此,我假设您想要检测网络连接丢失,以便恢复web套接字。Chrome为此提供了两个可靠的全局事件:
在线
离线


我已经发布了的源代码,它也解释了网络连接丢失/恢复的原因。Chrome扩展的相关Web套接字部分可以在Github上找到。

我认为您是在与。您使用的是内容脚本,而实际上您应该实现一个后台页面。@RobW我同时使用回溯脚本和内容脚本,没有人处理错误页面。请定义“没有人处理错误页面”的含义。后台页面仅在关闭Chrome时关闭。你想检测网络连接丢失以触发重新连接例程吗?@RobW你说得对,这是我的错。请发布答案,让我有可能接受:)是的,我现在正试图触发失去连接。我有点困惑你,对不起。我认为当后台脚本停止运行时,我就不可能重新启动与WS-server的连接了(正如您所描述的,实际上从未发生过这种情况)。所以重启服务器没有问题。此外,我需要的可能性,重新加载标签时,任何错误发生<代码>导航器。联机无法解决最后一个问题,因为站点加载可能会有很多不同的问题。我想我需要在选项卡和后台脚本之间使用某种乒乓机制。@skrafi如果您只想检测请求错误,请查看
webRequest
api的事件我已经尝试过了,但是遇到了问题。无法看到此事件被触发。@skrafi您是否请求访问此主机的权限?你有没有查找任何错误?下次必须RTFM 3次。谢谢