hiproxy轻量级网络代理工具
hiproxy是一个基于Node.js开发的轻量、可扩展的网络代理工具,主要目的是为了解决多个开发者在开发过程中遇到的hosts管理和请求代理的问题。使得在开发时,不再需要修改系统hosts和启动一个Nginx服务。
hiproxy支持hosts配置文件,同时也扩展了hosts的语法,支持端口号。此外,hiproxy还支跟Nginx配置文件相似语法的配置文件。
Features
-
支持Nginx风格的配置文件格式,配置简单直观
-
支持hosts以及扩展(支持端口号)
-
支持插件扩展rewrite指令、CLI命令和页面
-
支持HTTPS证书自动生成
-
支持代理自动配置(Proxy auto-config)
-
支持后台启动,日志输出到文件
-
支持配置文件自动查找
-
支持打开浏览器窗口并自动配置代理
-
提供Node.js API
-
...
Install
npm install -g hiproxy
Usage
CLI
-
启动服务
hiproxy start -p 5525 --debug --workspace <path-to-your-workspace>
-
配置浏览器代理
127.0.0.1:5525
注意: 也可在启动的时候,添加选项--open [browser]
,这样hiproxy会自动打开一个浏览器窗口,并设置好代理。
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命令和选项
> 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 后台运行 --log-dir 后台运行时日志存放路径(绝对路径),默认为用户目录 --log-time 显示日志时间 --log-level 过滤日志级别,只有指定级别的日志才会显示 --grep <content> 过滤日志内容,只有保护过滤字符串的日志才会显示
评论