使用chrome.webNavigation
时,需要webNavigation
权限。如Permission Warnings所述,使用该权限会使安装程序显示警告消息:
Read your browsing history
在我的情况下,我只想听一个特定的域名,让我们说domain.com
。所以,我需要过滤chrome.webNavigation.onCompleted.addListener()
的回调。
现在,从用户角度来看,他们可能不信任Chrome扩展程序,因为"阅读您的浏览历史记录"太宽泛,扩展名只适用于domain.com
。
在权限中使用匹配模式时,会使用Read and change your data on all domain.com sites and www.domain.com
之类的消息。
有没有其他方法可以使用chrome.webNavigation
并且只能收听一个域名?哪里应该发送chrome扩展问题/功能请求?
更新我必须使用webNavigation
才能支持AJAX调用。也就是说,监听DOM和使用AJAX创建的URL的更改。我使用 MutationObserver
解决了这个特殊情况。因此,我可以删除许可。最初的问题已被Rob W报告为错误。
答案 0 :(得分:3)
在这种情况下,我已经在一年前发布了一项功能请求:https://crbug.com/431108(“允许扩展使用webNavigation API而不使用webNavigation权限”)。
应该发送Chrome扩展程序问题/功能请求吗?
在https://crbug.com/new报告功能请求和错误(指向https://bugs.chromium.org)。
如果您希望在不使用webNavigation API或添加额外权限的情况下获得chrome.webNavigation.onCompleted
的等效效果,那么您可以在content script和send a message向后台页面声明{ {1}}事件触发。