编写Chrome插件

新建文件夹 simple-porxy,并在文件夹下新建如下文件:

  • manifest.json(描述文件)
  • background.html(后台运行页面)
  • background.js(后台运行js)
  • on.png (插件图标)

manifest.json

{
  "author": "wxj",
  "background": {
    "page": "background.html"
  },
  "browser_action": {
    "default_icon": "on.png",
    "default_title": "a simple proxy crx"
  },
  "description": "This is a simple proxy crx",
  "manifest_version": 2,
  "name": "simple-proxy",
  "short_name": "sproxy",
  "permissions": [
    "proxy"
  ],
  "version": "1.0"
}

background.html

<!DOCTYPE html>
<html>
  <head>
    <script src="background.js"></script>
  </head>
  <body>
  </body>
</html>

background.js

chrome.proxy.settings.set({
  value: {
    mode: 'fixed_servers',
    rules: {
      proxyForHttp:{
        scheme: 'https',
        host: 'default.px.skyzip.de',
        port: 443
      },
      proxyForHttps: {
        scheme: 'https',
        host: 'default.px.skyzip.de',
        port: 443
      },
      bypassList: null
    }
  },
  scope: 'regular'
});

上诉代码的host来源于skyZIP Proxy CRX 0.8.3的源码,使用winrar打开下载好的skyZIP Proxy CRX 0.8.3,并解压,便可看到chrome插件的源代码。编写完以上三个文件后,打开chrome扩展程序的开发者模式,加载simple-porxy文件夹,即可安装插件

打开chrome扩展程序

加载扩展程序

注意:

以上代码实现了请求代理功能,浏览器的所有请求都将被代理至 default.px.skyzip.de 服务器,包括你在网页中输入的账号和密码等等。为了安全起见,建议自己购买服务器,并在服务器上安装代理转发工具,然后将 background.js 中的 host 改为你购买的服务器的IP地址。

另外,使用chrome插件需要注意,某些chrome插件可能会监控用户在网页中的输入信息,包括账号密码等,比如著名的adblock plus插件(和adblock是两个不同的插件)就曾被曝出含有木马病毒。