如今基本大部分网站都使用了https,因此要想抓到https的请求,首要任务是先有工具:charles、fiddler,先介绍下charles针对https请求的抓取方法,此方法兼容windows和mac用户ios
一、 windows下安装charles,看到此文章的用户相信都已经安装了charles,若是还真的没安装,麻烦就自行搜索,进行安装了,打开charles(我使用的charles版本是3.11.4),再继续浏览。windows
二、 ok,charles已准备完成,接下来就要配置charles证书:浏览器
以后会弹出安装证书:服务器
点击安装,一路下一步,直到提示“导入成功”微信
此时证书仍是不被信任的,让不信任变成信任:打开IE浏览器—>工具—>Internet选项—>内容—>证书—>把中级证书颁发机构中的charles证书导出来—>再把导出来的证书导入到受信任的根证书颁发机构中。这样就ok了。网络
进入Charles - 》 Proxy - 》 SSL Proxying Settings架构
打开SSL设置界面,将图上所示复选框选中工具
点击“Add”按钮,在弹出框的 “Host” 和 “Port” 都输入“*”,最后点击OK,根据提示,这样配置能够抓取全部的https包测试
到此配置完毕,再次抓取https报文,就不会所有都是unknown了网站
三、 在移动设备上配置手机代理并安装证书
在手机上设置代理:设置—>无线网络,设置服务器ip和端口号:
而后,手机安装证书:
会弹出一个提示框,以下:
而后手机浏览器输入如上地址:http://charlesproxy.com/getssl会弹出以下页面:
点击安装便可,安装完成后就变成已验证,以下:
为何ios手机安装好fiddler证书/charles证书仍是抓不到https请求?
最近有很多人有此困惑,
由于你的ios系统应该是10.0以上的系统,
在手机系统设置---关于手机----证书信任设置,在此页面把证书开启便可;
下面以访问百度wap站点为例:
上图看到,访问百度wap站点仍是看不到https的请求数据,下面还须要再继续配置:
请先微信扫码关注微信公众号:测试架构师,配置成功几率会更高^_^
点击SSL Proxying Settings,弹出下面的框,输入Host填写要抓取的ip或域名,port填写443便可。
设置完成后,从新方位百度wap站点就能够抓取到https请求了
若是以上还没解决,请关注个人微信公众号:测试架构师,后台留言找到我!
了解更多请关注微信公众号:测试架构师