上次谈到了Fiddler Orchestra用户指南,这次笔者把自己的实战演练分享大家,闲话少说,步骤如下:
1、根据前面文章《Fiddler Orchestra用户指南》,Fiddler Orchestra客户端和控制器只能运行在至少支持.NET Standard 2.0的框架上。我这里试验机为Windows系统,安装.NET Framework 4.7.1(https://www.microsoft.com/net/download/Windows/run)。安装就不细说了,按照引导窗口一步步安装上即可,安装上后,提示要重启电脑,为了确保后面试验成功,立即重启喝上一杯茶。
2、安装.NET Core Runtime 2.0.6和ASP.NET Core Runtime 2.0.6(下载地址,依然为上面提供地址)
ps:不安装ASP.NET Core Runtime,第4步启动.NET Core Fiddler Orchestra Client时,要报错:An assembly specified in the application dependencies manifest (FiddlerOrchestra.Client.NetCore.deps.json) was not found…
3、在试验机器上安装Fiddler最新版(一定要最新,5.0的第一个版本(17年12月份)发现有bug,升级更新后问题解决,我这里为:v5.0.20181.14850 for .NET 4.6.1 Built: 2018年3月20日)。然后找到“Fiddler Orchestra Beta”选项卡。在下面提供的地址下载Fiddler Orchestra client。下载完成后,解压到一个目录下即可。
4、因为.NET Core Fiddler Orchestra Client是一款普通的ASP .NET Core应用程序。所以,它的启动用“ dotnet FiddlerOrchestra.Client.NetCore.dll ”。找到前面解压的目录
5、依上面启动.NET Core Fiddler Orchestra Client的打印信息,在浏览器中输入http://localhost:8800/,显示如下图。(关于这里面的详细设置,请回到上回分享的《Fiddler Orchestra用户指南》一文)
勾选上“Allow remote clients to connect”,然后点击[Start!]按钮,成功启用,上面对应Status信息发生变更:
6、为了使Fiddler Orchestra Client成功连上Orchestra Controller。根据上文简介用户指南所述,必须先启动Fiddler中的Orchestra Controller。
7、回到.NET Core Fiddler Orchestra Client页面,在“Orchestra Connection”中,输入Orchestra Controller机器的:IP地址(因为小酋把Controller和client装在一起,所以这里填写127.0.0.1回环地址),连接端口(默认为3636),以及Private key。然后点击按钮[Connect!],成功(绿色的“Success”真好看!)
在自己本地机器上,连接时发现报错 Error The WebSocket protocol is not supported on this platform。最后小酋选择把.NET Core Fiddler Orchestra Client装在一台远程服务器主机上。错误猜想,小酋本地机器为Win7系统,远程系统为Windows Server 2012,根据网上资料查找,如果要支持WebSocket,似乎必须要配置开启IIS等服务。小酋购置有远程云主机,省的麻烦就没去折腾了,大家如果有兴趣可以帮小酋证实下。
8、最后,我们就可以把浏览器或者手机的代理连接到远程服务器的8866端口上,与Fiddler的代理设置是一样的,最后在Fiddler中,神奇的事情发生了(见下图左侧抓取包的Device name与右侧的.NET Core Fiddler Orchestra Client的Device name)。
至此,小酋完成了Fiddler Orchestra的实战演练。这是Fiddler新版本的新功能,必然存在一些缺陷,希望后续Fiddler优化后,能让其变得更加简单易用。