前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >《Charles从入门到精通》之截取截取Https通讯信息和模拟慢速网络

《Charles从入门到精通》之截取截取Https通讯信息和模拟慢速网络

作者头像
拉维
发布2022-06-15 11:51:08
5010
发布2022-06-15 11:51:08
举报
文章被收录于专栏:iOS小生活iOS小生活

截取HTTPS通讯信息

安装证书

如果你需要截取分析HTTPS协议相关的内容,那么需要安装Charles的CA证书。具体步骤如下。

首先,我们需要在Mac电脑上安装证书。点击Charles的顶部菜单,选择“Help”->“SSL Proxying”->“Install Charles Root Certificate”。如下图:

这样在Keychain中就可以看到下图所示的内容:

需要注意的是,这个证书是不被信任的,因为系统默认是不信任Charles的证书的。此时需要对证书右键->"显示简介",然后将“使用此证书时”选项改为始终信任,如下图所示:

这是需要输入登录密码来授权的,在我们输入完密码之后,在Keychain中显示的证书就是这样的了:

这样,证书就安装完成了。但是需要注意的是,即使是安装完证书以后,Charles默认也是不截取HTTPS网络通讯的信息的,如果你想截取某个网站上的所有HTTPS网络请求,那么你可以在该请求上进行右击,然后选择“Enable SSL Proxying”,如下图所示:

这样当SSL Proxying 的状态是Enable的时候,就配置完成了~然后该Host的所有HTTPS的请求就可以被请求到了。

截取移动设备上的https通讯信息

如果我们需要在iOS或者Android设备上截取HTTPS的通讯信息,那么还需要在手机上安装相应的证书,按照下图的顺序点击

之后会弹出一个对话框,如下图所示:

上图给出了三个信息。

第一个信息是172.172.100.203:8888,这是Charles的地址,前面的文章讲到,我们需要把手机网络请求的代理设置成Charles才可以截取到手机上的网络通讯,172.172.100.203是Charles所在的电脑的IP,8888是Charles的端口号,这样在手机上的http代理中进行相关的设置即可(可参考该系列前面的文章)。

第二个信息是chls.pro/ssl,这是证书的地址,在http代理设置完成之后,在Safari中打开这个地址

就能进入证书安装页面,如下图

然后按照提示点击安装即可。

第三个信息是,在iOS10之后,还必须要去【设置】->【通用】->【关于本机】->【证书新信任设置】中将对应证书的信任按钮给打开,如下图所示:

以上三步设置成功之后,就可以截取手机上的https网络请求了,不过同样需要注意的是,默认情况下Charles并不截取,你需要在截取的网络请求上右击,然后选取“Enable SSL Proxying”菜单项。

模拟慢速网络

在做移动开发的时候,我们常常需要模拟慢速网络或者是高延迟网络,以测试应用在网络不好的情况下是否表现正常,Charles对此需求提供了很好的支持。

在Charles的菜单上,选择“Proxy”->“Throttle Settings”,在弹出的对话框中,勾选上“Enable Throttling”,就可以设置Throttle preset的类型了,如下图所示:

如果我们只想摸你指定网站的慢速网络,那么可以勾选上“Only for selected hosts”,然后增加host项即可。

以上。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-04-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 iOS小生活 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
SSL 证书
腾讯云 SSL 证书(SSL Certificates)为您提供 SSL 证书的申请、管理、部署等服务,为您提供一站式 HTTPS 解决方案。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档