プロキシ切り替えるクロム拡張作った
面倒くさかったから勉強も兼ねてクロム拡張を作った。
マニュフェストファイルはこんな感じ
{ "manifest_version": 2, "name": "Proxy Changer", "version": "1.0", "description": "change http proxy", "browser_action": { "default_icon": "icon.png", "default_popup": "popup.html" }, "permissions": [ "tabs", "proxy" ], "icons" : { "128": "icon.png" } }
続いてhtml
<!DOCTYPE HTML> <html lnag="ja"> <head> <meta charset="utf-8"> <title>proxy changer</title> </head> <body> <button id="scholl">scholl proxy</button> <button id="outer">outer proxy</button> <script src="background.js"></script> </body> </html>
js
window.onload=function(){ document.getElementById("scholl").addEventListener("click", changeShollProxy); document.getElementById("outer").addEventListener("click", changeOuterProxy); } var config = { mode: "fixed_servers", rules: { proxyForHttp: { scheme: "http", host: "xx.xx.xx.xx", port: xxxx }, bypassList: ["127.0.0.1"] } }; function changeShollProxy(){ chrome.proxy.settings.set( {value: config, scope: "regular"}, function(){} ); } function changeOuterProxy(){ config.mode = "auto_detect"; chrome.proxy.settings.set( {value: config, scope: "regular"}, function(){} ); }
html適当なのは許して
本当は
<button id="scholl" onclick="chagneSchollProxy">scholl</button>
みたいにしたかったけど、クロム拡張では出来ないみたい(違ってたらごめんなさい)。
参考
いまさらまとめるChrome ExtensionでのJavaScript挿入 - console.lealog();