使用 google chrome 扩展设置代理

use*_*016 7 javascript json google-chrome google-chrome-extension google-chrome-devtools

我正在尝试构建一个 chrome 扩展,它可以在启动浏览器时更改代理设置。我遵循了 chrome 扩展文档,但仍然没有成功。

清单文件

   {

      "manifest_version": 2,

      "name": "Proxy",
      "description": "Proxy on 127.0.0.1:8080",
      "version": "1.1",
      "background": {
      "scripts":["background.js"]
      },
      "browser_action": {
            "default_icon": "icon.png",
            "popup":"popup.html"
        },
    "permissions": [
        "tabs",
        "http://*/*",
        "https://*/*",
        "notifications",
        "contextMenus",
        "history",
        "background",
        "proxy"
    ],
    "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
    }
Run Code Online (Sandbox Code Playgroud)

后台.js

chrome.windows.onCreated.addListener(function() {

var config = {
  mode: "fixed_servers",
  rules: {
    proxyForHttp: {
      scheme: "http",
      host: "127.0.0.1",
      port:"8080"
    },
    bypassList: ["foobar.com"]
  }
};
chrome.proxy.settings.set(
    {value: config, scope: 'regular'},
    function() {});

});
Run Code Online (Sandbox Code Playgroud)

上面的代码不起作用...

小智 0

我认为您不能使用Background.js 中的chrome.proxy API。我对弹出扩展程序做了同样的事情(使用文档中的代码示例)并且它工作得很好......