Charles的Https抓包及弱网配置
一、Charles的主要功能
(1)截取Http 和 Https 网络封包。
(2)支持重发网络请求,修改请求参数,方便后端调试。
(3)支持模拟弱网环境。
二、配置简单抓包
1、设置系统代理:勾选Proxy—windos proxy(或Mac os x proxy)
2、设置端口:点击Proxy—proxy setting,弹出以下界面:
一般端口设置为8888,勾选下面的选项,点击ok
3、设置客户端代理:
手机:打开wifi高级设置,设置HTTPS代理为手动,填写服务器ip(即电脑ip,可用ipconfig在dos窗口查询),端口为刚刚设置的端口8888
电脑:打开浏览器网络代理,设置代理服务如下,选择手动代理配置
http代理为127.0.0.1,端口为刚刚设置的端口8888
4、允许手机端接入
一般在手机端设置好代理以后,charles会自动跳出一个是否允许使用代理的选择按钮,我们这是选择allow,如果不小心选择了deny,可以通过proxy—access control settings,输入该手机的ip地址(即wifi的DNS地址)。如果想要允许接收所有手机,可以按照说明输入ip,例如我抓包的手机都是192.168.4.xx网段的,可以输入192.168.4.0/24来看允许该网段的所有手机接入
三、配置https抓包证书下载
电脑端:Help—-SSL Proxying—-Install Charles Root certificate
手机端:Help—SSL Proxying,点击延伸选项中第三行,出现如下
打开手机浏览器,搜索Chls.pro/ssh,弹出证书下载,点击下载,android端证书下载下来就好了,ios下载了证书之后还需要将证书的权限打开(设置—关于本机—证书信任设置)
请求过滤:Filter
四、配置模拟弱网
模拟网速功能
设置网络:proxy—throttling setting,支持对Bandwidth(带宽)、Utilistation(利用百分比)、Round-trip(往返延迟)、MTU(字节)进行配置,并且支持3G/4G或者其他网络模式。
五、名词解释
(1)URL
https:协议方案名
M.xxx.baidu.com:服务器地址,这里是DNS可解析的名称。同事也可以是ipv4d地址名,还可以是[0:0:0:0:0:0:0:1]这样用方括号括起来的IPV6地址名。
App/getindexPage:带层次的文件路径。指定服务器上的文件路径来定位特指的资源。
URL——请求url的路径、文件和查询字符串
Status——状态是否已完成
Notes——备注
Response Code——响应状态码
Protocol——该seesion使用的协议(Http/https/ftp)
SSLssl——协议版本号
Method——该seesion使用的方法(get/post/put等)
Content-Type——响应的content-type头
(2)Timing
Request Start Time——接收到的第一个请求的第一个字节的时间点
Request End Time——发送到客户端的最后一个响应的最后一个字节的时间
Response Start Time——响应开始时间
Response End Time——响应结束时间
Duration——整个请求—响应持续时间
DNS——所有选中的session解析DNS所花费的时间的总和
Connect——所有选中session建立TCP/IP连接所花费的时间总和
Request——请求耗费时间
Response——响应耗费时间
(三)Size
Request Header——请求头大小
Response Header——响应头大小
request—请求头
Total—请求头+响应头字节大小
(四)contents
Json格式,具体含义参考接口文档。(其中raw是原始数据包的状态)
(五)summary
请求详情,包含加载时间等
(六)chart
时间线图表
(七)右键名词
右键封包时,出现如图,可复制请求、模拟重复请求等
Tools-Blacklist—黑名单,不对其抓包