我正在编写一个 Google Chrome 扩展程序,该扩展程序仅在 URL 匹配时运行http://*:8000/*
我的 manifest.json 文件的一部分:
"content_scripts": [{
"matches": ["http://*:8000/*"],
"js" : ["client.js"],
"run_at": "document_end"
}]
尝试打包扩展时出现以下错误。
Invalid value for 'content_scripts[0].matches[0]': Invalid host wildcard.
如果我改变matches
to <all_url>
它可以正确打包并在每个页面上正常工作。
如何让它仅适用于包含端口 8000 的 URL?
您必须以编程方式检查端口号,如果不是您想要的端口,则停止脚本的评估。你可以检查window.location.port
(仅供参考,打开时端口 80 是一个空字符串http
) or window.location.host
其中包括主机名和端口(但不包括window.location.hostname
- 它不包括端口)。所以,我会以这样的方式开始我的脚本:
(window.location.port === "8000") && (function() {
// your code...
})();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)