目录[-]

2021年4月1日更新

Charles工具,与fiddler都是抓包工具,更加简单容易观看和导出代码

安装方式:

1.运行安装包,按照步骤一直进行

2.将charles.jar放在lib目录下

IOS手机小程序、app抓包

1.Charles,先去掉这个Windows Proxy,取消勾选只能抓手机的包。勾选后PC端和手机都能提取。

2.Proxy Settings,写成这样既可

3.SSL Proxying Settings,IP地址写*,端口写*,代表的是,什么类型的IP地址都可以接受

4.修改Recording Settings,Exclude是屏蔽列表,需要自己手动添加,添加后下一次就不录制这些数据了,同理include。

如果什么都不写,那就是默认录所有数据,就是说,如果不知道自己需要录制的域名是什么,Include和Exclude不填写就行,当你知道想要屏蔽/录制哪些内容,再手动添加即可到Exclude。

5.安装PC端和手机端证书,第二项是安装PC端证书,第三项是安装手机端证书

PC端就可以爬到HTTPS网站了

手机端,点击后会弹出这个界面

设置手机

第一步:PC和手机必须连接在同一个WIFI环境下,手机找到“配置代理”选项,修改服务器和端口,这两个值服务器就是电脑的IP地址,端口也写成是8888,与上面配置的一样,注意,单位的本机IP地址可能会变,不一定是固定的,所以每次连接时都要查看一下。

第二步:手机上,找到Safari浏览器输入网址:http://charlesproxy.com/getssl

前面的http如果不好用就换成https

第三步:下载并安装证书(注意手机端和电脑端必须使用同一个网络,并且手机端设置好了服务器和端口号才有效

这是安装后的证书,这样,手机端也配置完毕

第五步:进入设置—关于本机—证书,需要再勾选信任,这时候就可以上网了

使用手机,打开手机小程序/app,查看Charles抓到的包都是些什么,如图这样,就是成功了

有的时候,response和request可能是乱码

这种情况,需要在SSL Proxying Settings添加域名和端口号,就不会有乱码了,端口号统一写443

弱网模拟时,Charles各项配置

下边是记录每个字段的意义

Bandwidth(带宽)【吞吐量kb/s】定义数据传输的速度,上行和下行

Utilisation(利用)总带宽的百分比,但是现在大多数互联网利用率都是100%,所以也不用修改这个

Round-trip Latency(请求往返延迟)【延时】

往返延迟测量客户端和远程服务器之间的第一次往返通信的毫秒延迟。它用于客户端向服务器和服务器向客户端的每次请求。

MTU(最大传输单元)

在任何传输的TCP数据包的最大尺寸。指定MTU不改变的可用带宽,但允许Charles在MTU分配带宽大小的块,导致在每个传输包分割的现实水平。

MTU越大,通信效率越高而传输延迟增大,所以要权衡通信效率和传输延迟选择合适的MTU。

Reliability(可靠性)【丢包】

可靠性是衡量连接完全失败的可能性。这是非常有用的模拟不可靠的网络条件。可靠性是指定为成功发射10kib消息的可能性,所以,值为50%意味着所有10kib传输一半会成功。较大的邮件或更小的消息或多或少都有可能失败,所以20kib传输将只有25%的成功率和5kib传输成功率约70%。

Stability(稳定性)【抖动】

稳定性是衡量一个连接的可能性是不稳定的,因此降低了质量。这是非常有用的模拟网络,如移动网络,定期连接质量差。如果连接不稳定,则连接的质量会在不稳定的质量范围内随机下降。此质量值,然后应用作为另一个缩放因子的可用带宽。

unstable quality range(不稳定质量范围) 此处设置主要针对于Stability中设置中的范围

以下配置模拟2G网络

1.带宽256kbps(上传和下载)

2.利用100%

3.延迟300ms

4.MTU1500字节

5.可靠性75%

6.稳定性75%

7.不稳定的质量范围为20%-25