Fiddler

很久用过非常好用,支持https,为了避免忘记记录一下。

可以拦截在线请求代理到本地,用来调试远程项目 

让我慷慨的是历史总是反复的重演~~~~

         n年前,我第一份工作的时候,前后端没有分离。这种模式下的工作模式是:前端写好页面给后端套数据。

        如果出现需要修改js文件或者css文件的时候,非常的头疼。后端尝试给前端的电脑搭建环境,然后让前端改后端的模板。

        但是问题是,有好几个前端,且不是每个前端的电脑都能跑起来后端环境。

        非常的痛苦,幸运的是小组长推荐我使用了Fiddler拦截浏览器的资源请求,然后代理到本地,这样就可以实现修改已发布到服务器的远程项目。

        我曾经以为,我永远也不会再遇到这样的场景,也不再需要用到Fiddler。受限与但是的认知,我对Filder使用正则配置拦截路径的操作也不是很了解,更加不会记录下来。

        今天我突然遇到了类似的场景。

        公司项目是有中台的。中台下面的每个子项目都是独立的。我们开发的子项目只有发布后才会被嵌入到中台。

        这会导致我们本地无法调试中台的功能。

        一开始,并没有引起我重视,也没有想到用Fidder。

直到某天,线上出现了个bug。。。。。。。。

然后大家都束手无策。。。。每次修改后发布dev测试的效率让人无比的痛苦。。。

然后大佬给了个类似的方案。。。。

给了个文档,。。。

巴拉巴拉巴拉。。。。。。。。

我看了后焕然大悟,这不就是网络请求拦截代理么,这个N年前我用过的。。

于是捡起来Fidder。

不过我还是踩了个坑,下面会说明。

操作界面如下:

下载这个软件,按照上图3个步骤配置即可。

其中有2个输入框,

  1. 一个是拦截目标的链接
  2. 一个是本地链接

可以看到第一个输入框是regex开头的,说明用了正则

第二个没有regex开头,但是有个${arg},其实他是第一个输入框匹配到的内容

我一开始以为第二个输入框也需要用正则的,所以卡了好一会,百度,谷歌,一波骚操作后才找到解决方案。

上面两个输入框的内容格式如下:

regex:(?inx)^http://xx.xx.xx.xx:900/web/(?<arg>.+)$
http://xx.192.xx.xx:9000/web/${arg}
  1. 第一个是正则,
  2. 第二个是es6字符串模板 

happy ending~_~

更新:

不要代理太多链接,尽量缩小代理范围,否则可能会导致页面特别的卡

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐