现在基本大部分网站都使用了https,所以要想抓到https的请求,首要任务是先有工具:charles、fiddler,先介绍下charles针对https请求的抓取方法,此方法兼容windows和mac用户(mac用户方法基本类似,如果有必要,请留言,后续我会专门再做整理,考虑到部分用户还是windows系统,以下主要针对windows实际演练)。


1、windows下安装charles,看到此文章的用户相信都已经安装了charles,如果还真的没安装,麻烦就自行搜索,进行安装了,打开charles(我使用的charles版本是3.11.4),再继续浏览。

2、ok,charles已准备完成,接下来就要配置charles证书:

之后会弹出安装证书:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_Charles抓取程序内部调用外网接口


点击安装,一路下一步,直到提示“导入成功”


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_Charles抓取程序内部调用外网接口_02



此时证书还是不被信任的,让不信任变成信任:打开IE浏览器—>工具—>Internet选项—>内容—>证书—>把中级证书颁发机构中的charles证书导出来—>再把导出来的证书导入到受信任的根证书颁发机构中。这样就ok了。



Charles抓取程序内部调用外网接口 charles怎么抓取https请求_请求数据_03


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_百度_04


3、在移动设备上配置手机代理并安装证书

在手机上设置代理:设置—>无线网络,设置服务器ip和端口号:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_windows系统_05



然后,手机安装证书:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_windows系统_06



会弹出一个提示框,如下:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_请求数据_07



然后手机浏览器输入如上地址:http://charlesproxy.com/getssl会弹出如下页面:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_windows系统_08


点击安装即可,安装完成后就变成已验证,如下:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_请求数据_09



下面以访问百度wap站点为例:


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_Charles抓取程序内部调用外网接口_10


上图看到,访问百度wap站点还是看不到https的请求数据,下面还需要再继续配置:

Charles抓取程序内部调用外网接口 charles怎么抓取https请求_Charles抓取程序内部调用外网接口_11

点击SSL Proxying Settings,弹出下面的框,输入Host填写要抓取的ip或域名,port填写443即可。


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_百度_12



设置完成后,重新方位百度wap站点就可以抓取到https请求了


Charles抓取程序内部调用外网接口 charles怎么抓取https请求_百度_13

以上内容如果觉得有一点帮助,请帮忙转发朋友圈,感谢!