开源跨平台Http代理服务器,远程调试的瑞士军刀--「ZanProxy」

官方介绍

Zan Proxy是一个用Node.js编写的HTTP代理服务器,可用于修改请求地址和模拟响应数据。它同时也是一个自定义DNS解析和请求监控的工具。 该代理服务器有人性化的界面,简单易用。我们还为开发者提供了高级插件机制来自定义代理行为。

Github

主要功能特性

自由转发

连通线上环境与本地电脑

无论是线上环境还是预发环境,都可以轻松地将资源请求(js/css)与接口请求转发到本地电脑,达到用本地电脑调试线上页面的效果。支持 HTTPS、WebSocket,支持转发规则的共享。

规则同步

一步打造团队业务专属规则

无需手动同步。利用远程规则功能,将线上的规则同步给团队成员,从而保证团队内部规则统一。

一键秒切 Host

没有浏览器缓存

无需改host文件,没有浏览器缓存,DNS解析一键修改,轻松解决开发者的环境切换问题

Mock 接口数据

并行开发更高效

无需等待接口开发完成,即可调试,减少不必要的等待的时间, mock 数据接口让并行开发成为可能。通过插件扩展,还可以转发到第三方 mock 数据平台。

代理监控

请求响应一目了然

监控所有经过 ZanProxy 的请求,支持移动端请求抓包,提供的开发体验

支持自定义插件

灵活扩展

可以通过自定义插件定制代理行为,满足各种场景下的自定义代理需求

安装配置

笔者环境是Windows,因为官方文档上刚好没有详细介绍,因此咱们就来一起在Windows下安装配置一下,而且我相信在Linux上根本不是问题

环境前提

首先需要安装npm,需要使用npm进行安装,这里我假设你已经安装了npm

yarn global add zan-proxy # npm i -g zan-proxy

安装完检测一下

zan-proxy --version安装openssl

在windows下安装ZanProxy的一个小复杂之处就在安装openssl,网络上也有很多教程,在本文中,将会非常简单,稍后也会把用到的软件打包分享,软件名是Win64OpenSSL-1_1_1g,也可自行搜索安装

安装完成后将安装目录的bin文件夹配置到系统环境变量中即可完成openssl的安装

此方法是我目前见过比网上很多教程简单的多的一个方法,大家可以参考

启动ZanProxy

安装完成后就可以启动ZanProxy了

zan-proxy

如果成功会默认打开浏览器

启动参数可配置

指定代理端口

zan-proxy -p 8002

指定管理服务器端口

zan-proxy -u 40002

查看所有命令

zan-proxy -h

大家根据自己的需要配置即可,以上就是安装过程,接下来要配置证书,用于远程调试,证书文件我会放在链接里,文档中实在Mac下,笔者是在Windows下,安装大致类似

完成即可,以上是在windows下进行调试的,Android的请参考官方文档,接下来离完全可以使用还需要一个简单的配置,建议安装Chrome的插件SwitchyOmega,我也会放到链接中,用SwitchyOmega的目的是很方便的进行代理切换

浏览器中使用

浏览器不管是在Windows还是MacOS,亦或者是在Linux下都是一样的,首先启动ZanProxy,默认代理端口是8001,我们简单配置测试一下

配置SwitchyOmega

新建情景模式,然后使用http代理即可,端口是8001,局域网下可配置局域网ip,如下图,然后在你需要调试的页面选择此情景即可

请求监控

总结

具体到点的使用大家可以看文档了,本文主要还是讲解一下安装部分,其中Host管理、Http转发、Mock和插件部分大家可以随心所欲,文档中都非常详细,假如你想调试手机上的请求,你可以安装证书后配置代理进行远程调试,非常简单,enjoy it!

PS:软件和插件我都会打包放到链接,私信‘’会自动进行回复,感谢大家的支持!我会一如既往的分享实用开源项目、实用技巧以及实用软件,欢迎大家关注我!您的转发和评论将是对我最大的支持,谢谢大家!