Windows环境Charles截取App网络请求
2020-04-08 本文已影响0人
Nikon937
前言
Charles功能:
1.截取 Http 和 Https 网络封包。
2.支持重发网络请求,方便后端调试。
3.支持修改网络请求参数。
4.支持网络请求的截获并动态修改。
5.支持模拟慢速网络。
一、准备
1.Windows电脑
2.iPhone/Android手机
二、下载安装
1.下载(前往官网下载镜像文件)
https://www.charlesproxy.com/latest-release/download.do
2.下载后,双击,选择软件保存目录安装即可
3.进入文件夹,双击Charles.exe启动Charles
4.启动成功,使用Charles注册码(无须破解)
1.Charles注册码
Registered Name:https://zhile.io
License Key: 48891cf209c6d32bf4
2.Help->register Charles双击进入,填写注册码(如下图)
image.png
三、配置使用
1.获取本地电脑ip及端口
2.手机与PC连接在同一个内网下(wifi)
3.点击Proxy->Proxy Settings菜单,可以设置移动设备连接到Charles的端口(默认8888)
4.手机代理设置
wifi->修改网络->勾选高级选项->选择代理(手动)->输入1步骤获取的ip及端口->保存退出
5.客户端设置完成后,Charles面板弹出请求连接的确认菜单,点击 “Allow” 即可(如果不小心点击了拒绝,可以手动添加手机IP/Mac地址到允许访问列表,或者重启Charles,手机再次访问,会再次提示选择)
6.手机根据提示地址、端口号配置代理后,手机自带浏览器打开http://chls.pro/ssl
注意(安卓手机):
打开手机存储空间,找到下载好的文件,点击安装。
如果不成功,尝试将 pem改成crt格式,再次点击安装。如果不行,多换几个浏览器下载试试
7.一路允许安装证书即可(不会自行百度)
8.配置Proxy -> SSL Proxying Settings... 添加要抓取的https请求
四、如何使用Charles
1、过滤
方法一:
1.选择 Proxy->Recording Settings,
2.选择 Include 栏,
3.选择Add
4.填入需要监控的协议,主机地址,端口号
image.png
方法二:
1.选中待监控网址上右击
2.选择Focus
3.这样其他的请求就会被放到Other Hosts的文件夹里面
image
2、模拟慢速网络
1.在Proxy->Throttle Setting
2.选择Enable Throttling
3.Throttle Preset下选择网络类型即可
注意
若我们只想模拟指定网站的慢速网络,可以再勾选上图 Only for selected hosts”项,然后在对话框的下半部分设置中增加指定的 hosts 项即可。
3、篡改网络请求并重新请求
1.工具栏中点击 “Edit”,即可创建一个可编辑的网络请求。如下所示:
image.png
4、服务器压力测试
可以使用 Charles 的 Repeat 功能来简单地测试服务器的并发处理能力,方法如下:
1.选中待压测网络请求上右击
2.选择 Repeat Advanced菜单项,如下所示:
image.png
3.设置好后,点击确定即可
5、请求转发
-
实际开发时,有这样的场景,服务端线上版本有bug,需要模拟实际的线上环境,来验证程序的正确性,虽然可以让客户端修改一下APP的调用地址到你本机,然后重新打一个版本供你模拟测试,但是那效率极其低下
2.把线上App调用地址转发到你本地地址进行执行。
3.右键 -> Map Remote ...
image.png
4.配置Tools -> Map Romote
image.png