首页 > 解决方案 > Chrome 扩展:用于 URL 检查和/或自定义 DNS 的挂钩

问题描述

我正在构建一个扩展来检查自定义 TLD,然后从自定义 DNS 提供关联的 IP。我尝试过使用 chrome.proxy,以及简单的 location.host 解析。

chrome.proxy 使用文档中的复制粘贴具有非常奇怪的行为。重新运行 background.js 脚本 60 次左右。

location.host 从未被调用,因为“无法访问站点”错误页面加载并且似乎禁用了扩展后台脚本。

所以问题是如何在无法访问站点错误之前劫持 chrome 的正常 url 行为以挂钩,或者如何调整 DNS 查找以包含自定义 TLD。考虑到区块链 DNS自 2018 年以来就已经存在,这似乎是可能的(尽管 / 解决方法仍然需要低级 url 检查)

提前非常感谢,如果没有好的解决方案,请让我知道我没有注意到什么。

vue 应用的动作文件中的 JS:

var config = {
  mode: "pac_script",
  pacScript: {
    data: "function FindProxyForURL(url, host) {\n" +
          "  if (host == 'my.xym/')\n" +
          "    return 'PROXY localhost:8080';\n" +
          "  return 'DIRECT';\n" +
          "}"
  }
};

chrome.proxy.settings.set(
    {value: config, scope: 'regular'},
    function() {});

奇怪的行为是多次调用同一个控制台日志函数并且 chrome.proxy 不可用: 在此处输入图像描述

标签: google-chromegoogle-chrome-extensiondnstld

解决方案


推荐阅读