【问题标题】:How to match multiple sites with the same domain with Chrome extension content scripts如何使用 Chrome 扩展内容脚本匹配具有相同域的多个站点
【发布时间】:2016-07-09 12:15:15
【问题描述】:

尝试将内容脚本与具有相同域但不同 TLD 的多个站点匹配会导致它仅与其中一个站点匹配:

"content_scripts": [
  {
    "matches": ["https://foo.org/*", "https://foo.com/*"],
    "js": ["content.js"]
  }
],

在这种情况下,它只匹配 foo.com 而不是 foo.org。这种行为是否记录在某处,是否有某种方法可以使其匹配列表中的每个站点?

这也行不通:

"content_scripts": [
  {
    "matches": ["https://foo.org/*"],
    "js": ["content.js"],
  },
  {
    "matches": ["https://foo.com/*"],
    "js": ["content.js"],
  }
],

它最终只匹配foo.com

详细信息对话框的屏幕截图:

【问题讨论】:

  • 这些网址不是浏览器中加载的最终网址:www. 前缀是由 Google 的服务器添加的。
  • 如果问题是 www 子域,则两个域都不会匹配。我将其更改为通用域以使其更清晰。我还添加了详细信息对话框的屏幕截图,显示只有一个域匹配。
  • 我可以确认权限警告,我要测试实际匹配。

标签: google-chrome google-chrome-extension content-script


【解决方案1】:

我可以确认权限警告被压缩到一个域中,这很奇怪并且可能非常误导。

想想whitehouse.govwhitehouse.com [Wikipedia,如果你不熟悉后者],Chrome 更喜欢.com 作为权限警告。似乎值得一个错误报告。

但是,我无法确认它没有被注入的实际问题。这两种形式都会导致内容脚本被注入到我的测试中。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2023-03-21
  • 2014-03-04
  • 2014-05-15
  • 2014-05-23
  • 1970-01-01
  • 2017-04-11
  • 2011-11-25
  • 2023-02-14
相关资源
最近更新 更多