hiproxy輕量級(jí)網(wǎng)絡(luò)代理工具
hiproxy是一個(gè)基于Node.js開發(fā)的輕量、可擴(kuò)展的網(wǎng)絡(luò)代理工具,主要目的是為了解決多個(gè)開發(fā)者在開發(fā)過(guò)程中遇到的hosts管理和請(qǐng)求代理的問(wèn)題。使得在開發(fā)時(shí),不再需要修改系統(tǒng)hosts和啟動(dòng)一個(gè)Nginx服務(wù)。
hiproxy支持hosts配置文件,同時(shí)也擴(kuò)展了hosts的語(yǔ)法,支持端口號(hào)。此外,hiproxy還支跟Nginx配置文件相似語(yǔ)法的配置文件。
Features
-
支持Nginx風(fēng)格的配置文件格式,配置簡(jiǎn)單直觀
-
支持hosts以及擴(kuò)展(支持端口號(hào))
-
支持插件擴(kuò)展rewrite指令、CLI命令和頁(yè)面
-
支持HTTPS證書自動(dòng)生成
-
支持代理自動(dòng)配置(Proxy auto-config)
-
支持后臺(tái)啟動(dòng),日志輸出到文件
-
支持配置文件自動(dòng)查找
-
支持打開瀏覽器窗口并自動(dòng)配置代理
-
提供Node.js API
-
...
Install
npm install -g hiproxy
Usage
CLI
-
啟動(dòng)服務(wù)
hiproxy start -p 5525 --debug --workspace <path-to-your-workspace>
-
配置瀏覽器代理
127.0.0.1:5525
注意: 也可在啟動(dòng)的時(shí)候,添加選項(xiàng)--open [browser],這樣hiproxy會(huì)自動(dòng)打開一個(gè)瀏覽器窗口,并設(shè)置好代理。
Node.js API
var HiProxyServer = require('hiproxy');
var proxy = new HiProxyServer(8848, 10086);
// events
proxy.on('request', function(req, res){
req.someThing = 'some thing';
console.log('new request =>', req.method, req.url);
});
proxy.on('data', function(data){
console.log('on response =>', data.toString());
});
proxy.start().then(function (servers) {
console.log('proxy server started at: 127.0.0.1:8848');
});
// stop proxy server
// proxy.stop();
// restart proxy server
// proxy.restart();
CLI命令和選項(xiàng)
> hiproxy --help Commands: start Start a local proxy server stop Stop the local proxy server restart Restart the local proxy server state Show all the servers state open Open browser and set proxy Options: -v, --version 顯示版本信息 -h, --help 顯示幫助信息 -D, --daemon 后臺(tái)運(yùn)行 --log-dir 后臺(tái)運(yùn)行時(shí)日志存放路徑(絕對(duì)路徑),默認(rèn)為用戶目錄 --log-time 顯示日志時(shí)間 --log-level 過(guò)濾日志級(jí)別,只有指定級(jí)別的日志才會(huì)顯示 --grep <content> 過(guò)濾日志內(nèi)容,只有保護(hù)過(guò)濾字符串的日志才會(huì)顯示
評(píng)論
圖片
表情
