Google chrome extension 不需要webRequest权限的状态代码?

Google chrome extension 不需要webRequest权限的状态代码?,google-chrome-extension,Google Chrome Extension,我正在编写一个Chrome扩展,以便在链接失败时回退到Wayback机器 webNavigation对于DNS查找来说似乎足够了,但我看不到一种方法可以检测链接故障,通常只使用webNavigation 例如,是一个404链接,但我仍然得到webNavigation onDOMContentLoaded和onCompleted,并且没有HTTP错误的指示(没有发送OnError) 我真的希望避免使用完全开放的主机模式需要webRequest权限。是否有方法检测我丢失的HTTP故障?在onBefo

我正在编写一个Chrome扩展,以便在链接失败时回退到Wayback机器

webNavigation对于DNS查找来说似乎足够了,但我看不到一种方法可以检测链接故障,通常只使用webNavigation

例如,是一个404链接,但我仍然得到webNavigation onDOMContentLoaded和onCompleted,并且没有HTTP错误的指示(没有发送OnError)

我真的希望避免使用完全开放的主机模式需要webRequest权限。是否有方法检测我丢失的HTTP故障?

onBeforeNavigate
中发送
HEAD
请求,并在
onreadystatechange
回调中分析响应状态代码。如果是
404
,则使用
chrome.tabs.update
更改选项卡url


为每个页面发送额外请求的缺点是微不足道的,因为网页在加载时通常会生成更多的请求。

这是一个很好的解决方法-我想看看是否有其他建议出现。它仍然需要完全开放的主机权限——如果我需要采用ShadowXHR方法,那么我想我也可以请求webRequest权限。