我已经使用Google Chrome浏览器,所以我想用Selenium测试移植的Firefox插件。此扩展程序与自定义网站一起使用,并且该网站的开发版本在127.0.0.1:9000下提供。我需要使用内容脚本,但是它们不会插入我的页面中,而会注入我的服务的生产版本中。
我在Web Extensions的文档中进行了搜索,但发现的唯一内容是I should not mention the port number of my webpage。我试图从清单中删除端口,但仍未注入。当我使用Nginx配置将服务映射到没有端口的本地域时,它可以工作。不幸的是,我无法在CI上使用Nginx配置,我需要使用127.0.0.1。
这里是我的manifest.json
文件的子集:
{
"manifest_version": 2,
"permissions": [ "tabs" ],
"content_scripts": [
{
"matches": [
"http://127.0.0.1:9000/*",
"https://example.org/*",
],
"js": ["content-script.js"]
}
]
}
我的内容脚本将与https://example.org/
交互,但不会与http://127.0.0.1:9000/
...交互(这在Chrome浏览器中非常有效)
有什么方法可以使内容脚本与127.0.0.1和自定义端口交互?
这现在对我有用,请不要使用端口号。
"matches": ["http://127.0.0.1/*"]
在文档https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/Match_patterns的注释中提到(搜索1234
可直接转到注释)