前端使用 AnyProxy 代理工具
业界的代理工具已经不少了,Windows 有 fiddler,mac 有 charles【收费】,跨平台的有腾讯 alloy team 出品的 liver pool。满足特定功能的民间产品更是层出不穷,如代理线上 combo 文件的 flex-combo,clam 中的 doji 等等。
AnyProxy 是阿里巴巴基于 Node.js 开发的一款开源代理服务器。做为中间代理服务器,它可以收集所有经过它的 http 请求流量(包括 https 明文内容);它提供了友好的 web 界面,便于直观的查看经过它的 http 请求;同时它支持二次开发,可以用 javascript 控制整个代理的全部流程,便于前端调试和收集 http 请求页面内容。它可以用于移动 app 和移动 web 页面调试、 抓取。
- github:alibaba/anyproxy
安装 Node.js
从 Node.js官网 下载最新版或者稳定版 Node.js 的 msi 文件后,双击安装,知道安装完成即可。
安装和启动 AnyProxy
安装好 Node.js 后,在 Windows 的命令提示符中输入下面命令安装 AnyProxy,耐心等待直到安装完成:
npm install -g anyproxy
启动
命令行启动 AnyProxy,默认端口号 8001
anyproxy
启动后将终端 http 代理服务器配置为 127.0.0.1:8001 即可
访问 http://127.0.0.1:8002 ,Web 界面上能看到所有的请求信息
通过上面命令启动 AnyProxy 代理监听服务服务后,AnyProxy 会打开两个端口:
- 8001 端口:即代理服务端口, 本机的IP和 8001 用于设置代理,如:127.0.0.1:8001
- 8002 端口:AnyProxy 的 web 界面,通过浏览器打开 http://127.0.0.1:8002 的形式,即可查看所有经过 AnyProxy 代理的 http 请求。
其他命令
配置启动端口,如1080端口启动
anyproxy --port 1080
windows 查看 IP:
cmd--> ipconfig
手机 WIFI 配置代理,前提是必须是同一局域网,或者本机启动一个热点:
手机浏览器访问:https://www.baidu.com
CA 证书:
作为 npm 模块使用
AnyProxy 可以作为一个npm模块使用,整合进其他工具。
如要启用https解析,请在代理服务器启动前自行调用 AnyProxy.utils.certMgr
相关方法生成证书,并引导用户信任安装。或引导用户使用 anyproxy-ca
方法。
引入
npm i anyproxy --save
使用举例
const AnyProxy = require('anyproxy');
const options = {
port: 8001,
rule: require('myRuleModule'),
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();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

上一篇: 聊聊 PWA 开发技术
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论