AnyProxy使用详解(持续更新)
目录
- 更多分享:www.catbro.cn
一、前言:
-
AnyProxy是一个开放式的HTTP代理服务器。
-
Github主页:https://github.com/alibaba/anyproxy
-
主要特性包括:
- 基于Node.js,开放二次开发能力,允许自定义请求处理逻辑
- 支持Https的解析
- 提供GUI界面,用以观察请求
二、快速开始(主要摘子AnyProxy官方教程)
作为全局模块
-
安装
-
对于Debian或者Ubuntu系统,在安装AnyProxy之前,可能还需要安装 nodejs-legacy
sudo apt-get install nodejs-legacy
-
然后,安装AnyProxy
npm install -g anyproxy
-
启动:命令行启动AnyProxy,默认端口号8001
anyproxy
-
启动后将终端http代理服务器配置为127.0.0.1:8001即可 访问http://127.0.0.1:8002 ,web界面上能看到所有的请求信息 其他命令
-
配置启动端口,如1080端口启动
anyproxy --port 1080
作为npm模块使用
-
AnyProxy可以作为一个npm模块使用,整合进其他工具。
-
如要启用https解析,请在代理服务器启动前自行调用AnyProxy.utils.certMgr相关方法生成证书,并引导用户信任安装。或引导用户使用anyproxy-ca方法。
-
引入
npm i anyproxy --save || npm install anyproxy --save || yarn add anyproxy --save
-
demo
const AnyProxy = require('anyproxy'); const options = { port: 8001, rule: require('./rule'), webInterface: { enable: true, webPort: 8002, wsPort: 8003, }, throttle: 10000, forceProxyHttps: false, silent: false }; const proxyServer = new AnyProxy.ProxyServer(options); proxyServer.on('ready', () => { /* */ }); proxyServer.on('error', (e) => { /* */ }); proxyServer.start(); //when finished proxyServer.close();