whistle使用手册:http://wproxy.org/whistle/ins...whistle安装配置安装whistle第一步前需要安装node环境:npminstall-gwhistle第二步启动:w2start第三步:在PC上打开本地IP:8899下面是我的:http://10.8.12.107:8899/第四步:点击创建,随便输入一个名字第五步:添加如下信息,服务器链接不加http,然后点保存本地服务器和测试服务器,写在前面的那个。如果要注释掉这一行,在前面加上“#”。第六步:在手机上设置代理第七步:打开app或者浏览器,访问test-licai.essence.com.cn:81,你会发现执行的是你电脑本地的代码(只要这个手机访问(无论是app还是浏览器)test-licai.essence.com.cn:81,会被重定向到10.8.12.107:1441)【修改后有时手机观看效果不是实时的】code和保存,需要清空缓存重新进入][电脑关机重启后,需要先运行w2start,启动whistle][如果不成功,可以查看app是否limit不能抓包,因为ios和android可以通过单一代码限制代理抓包】如果是HTTPS请求,HTTPS抓包和http抓包的区别是HTTPS抓包电脑和手机需要安装证书(1)在电脑上安装根证书(2)下载根证书后,c点击rootCA.crt文件,会弹出根证书安装对话框(安装证书>当前用户>将所有证书放入以下存储>浏览>受信任的根证书颁发机构)(3)在手机上安装根证书ios:(withproxy)在Safari地址栏输入rootca.pro安装证书。*设置-描述文件-安装证书*关于本机-证书信任设置-信任证书Andriod:(偶代理)浏览器扫描HTTPS二维码并下载(#浏览器地址栏rootca.pro按提示安装)这样如OPPO手机:*设置-其他设置-设备和隐私-从华为等存储设备安装证书:设置-安全和隐私-更多安全设置-加密和凭证-从存储设备安装-找到下载的证书并命名!!打开HTTPS——捕获隧道连接以获取https!!打开whistle下的网络,看到这个说明本地已经代理了HTTPS:mac使用whistle抓pc包(mac配置系统代理):第一步:第二步:第三步:第四步:第五步:浏览器访问这个链接,在网络部分可以看到请求记录:【配置系统代理后,如果规则里没有配置请求,会正常请求在线请求,规则里配置的请求会被拦截重定向去配置的地址】修改接口请求返回内容--mock第一步:https://sit-mfsapp.axzq.com.c...resBody://{queryFundSort.json}第二步:配置在values之前queryFundSort.json设置了规则,从普通访问接口获取返回的body,可以复制过来,不用手动一个一个敲好处-与vue项目中的mock相比:添加或修改规则配置后,不需要需要重启,可以修改请求输入参数er,可以模拟接口whistle的异常情况,不需要像mock.deserver.js和mock-config.js这样的配置文件像mock-data一样占用一个文件夹来存放数据。whistle的配置是文档的形式。一目了然,不会隐藏在每个菜单的每个配置中修改post接口请求参数。Step1:https://sit-mfsapp.axzq.com.c...reqMerge://(fundCode=580008&fundSource=1)Step2:可以看到这个接口本来请求的是商品470021,请求的是whistle拦截修改后的产品580008是第三步:获取请求,修改请求参数的方法不同,应该是:https://sit-mfsapp.axzq.com.c...urlParams://(themeFundConfigId=BA69E867C8DF439EE0533260020ADD01),但不确定,延迟接口请求未验证https://sit-mfsapp.axzq.com.c...reqDelay://3000【3000表示3000毫秒=3seconds】联调前测试界面--测试界面Step1:找到任意一条请求记录,将其拖到“Composer”窗口Step2:根据需要修改参数,点击“Execute”,将模拟的请求记录到session列表中第一步将录音接口转发到后台同事的本地服务:在规则中配置:http://10.97.250.67:1238/mssps...10.97.244.116:8081http://10.97.250.67:1238/mssps...10.97.244.116:8081/msps-fstore两个配置都OK。第一个地址是我本地地址,第二个是后台同事的第二步:可以看到所有的msps-fstore请求都被拦截转发了,蓝色加粗字体解决跨域请求的步骤1:跨域拦截的性能步骤2:在规则中配置:https://sit-mfsapp.axzq.com.c...resCors://*https://sit-mfsapp.axzq.com.c...resCors://use-credentials第三步:对比配置前后请求头的区别,多了两个属性:access-control-allow-credentialstrueaccess-control-allow-originhttps://sit-licai.axzq.com.cn:81Charlesfiddlerwhistle比较和区别1.charles也可以实现whistle的功能,在appshell中运行本地代码2.charles有付费版和免费版经过3个月的试用,3个月后也可以使用,但每次使用时间以半小时为限。3.fiddler是免费的开源软件。4.Mac无法使用fiddler。所以一般mac用charles/whistle,window用fiddler/whistle5。hbuild可以在app中运行本地代码,也可以断点调试,目前还没有实践过。
