背景:从某个时间开始,ios的https代理不了了。。。
如果不安装证书,则只是抓不到包,但代理还是能用的。但按照证书后,直接就网络异常了。(Android是正常的)/(ㄒoㄒ)/~~
试过网上提供的很多种方式解决,比如增加http协议,加注册表,重启,重装,都不行。。。。
但我使用的测试包只是部分https请求,其他大部分http请求还是可以抓包定位问题的。
所以尝试能不能指定某些请求不走代理。
这里的不代理并不是过滤请求,网上搜解决方案看很多人直接等同于过滤请求了,其实过滤请求还是正常被代理的请求,只是为了查看方便,不在fiddler界面上显示而已。
解决方案:
Customize Rules里找到OnBeforeRequest模块,添加过滤脚本;
Tools>options-HTTPS面板下方增加白名单;
方法1 Customize Rules加过滤代码
if (oSession.HostnameIs("example.com")){
oSession.bypassGateway = true;
}
example.com :为想过滤的域名
添加后ctrl+s或者关闭时点击保存;
重启fiddler
(PS:按照官方文档添加的,但实际没生效。。。不知道为啥。。。)
方法2 options-HTTPS面板设置
点击fiddler上方操作栏Tools>options,打开选项面板,选择HTTPS设置,在下方过滤设置栏添加需要过滤的域名。
PS:点击skip decryption,会切换成仅针对目标代理,这样在开发测试中设备中,不会影响其他功能的使用,也是一种方法。
PPS:还没有解决ios设备https抓包问题。。。有知道的大神请指教