charles使用(四)--抓取https请求

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了charles使用(四)--抓取https请求相关的知识,希望对你有一定的参考价值。

参考技术A 在不做任何证书配置的情况下,抓取Https看到的response是一堆乱码的字符。左侧Structure里看到的请求host也是一把锁的样子,点击展开后,下面的请求也都是一把锁,显示的<unknown>。

默认我们是看不到https的请求数据的。我们需要安装证书。一般需要如下两个步骤:

在Charles的顶部菜单栏,选择 Help > SSL Proxying > Install Charles Root Certificate,就会把证书安装到电脑的钥匙串里。

打开钥匙串,钥匙串选择登录,种类选择证书,就可以看到安装的Charles证书了。

如果证书上有个红色的叉,是因为此证书不被信任,双击证书,展开信任那一栏,选择始终信任就可以了。信任完后,钥匙串看到的证书,红叉就会变成加号。

2、SSL Proxing > Install Charles Root Certificate on a Mobile Device or Remote Browser

1、Proxy > SSL Proxying Setting,点击add,把需要抓取的https请求的host添加进去就可以了(port可填可不填)。下图为抓取百度主页是填入的host。
抓取一个不认识的网站或者app时,如何确认host?
Structure那一排列表,截取https://后面的那一截就是了。

Charles抓取https请求详解

技术分享

大家好,我是TT,互联网测试行业多年,没有牛逼的背景,也没有什么可炫耀的,唯独比他人更努力,在职场打拼。遇到过的坑,走过的弯路,愿意与大家分享,分享自己的经验,少走弯路。首发于个人公众号【测试架构师】

原文如下: 


 

现在基本大部分网站都使用了https,所以要想抓到https的请求,首要任务是先有工具:charles、fiddler,先介绍下charles针对https请求的抓取方法,此方法兼容windows和mac用户(mac用户方法类似,如果有必要,请关注微信公众号:测试架构师,留言给我。后续我会专门再做整理)。

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

 技术分享

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

 技术分享

之后会弹出安装证书:

 技术分享

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

 技术分享

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

 技术分享

 技术分享

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

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

 技术分享

然后,手机安装证书:

 技术分享

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

 技术分享

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

 技术分享

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

 技术分享

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

 技术分享

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

 技术分享

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

 技术分享

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

 技术分享

如果以上还没解决,请关注我的微信公众号:测试架构师,后台留言找到我!

 


 

                                                               了解更多请关注微信公众号:测试架构师

                                                         技术分享


 

以上是关于charles使用(四)--抓取https请求的主要内容,如果未能解决你的问题,请参考以下文章

Charles抓取https请求中文乱码的处理方法

charles抓取https请求

Charles——Charles环境搭建,使用Charles抓取 Http 和 Https 的请求和响应进行接口测试,模拟慢速网络进行弱网测试,设置请求时间和请求数量进行负载测试

Charles抓取https请求包

Charles抓取https请求包

Mac使用Charles抓取ios手机APP中的https请求