一、断点调试Breakpoint Settings
1、Charles的断点调试如下图,或者选择对应的接口鼠标右键点击“Breakpoint Settings”进入断点;
2、程序运行进入断点模式,可以在request中编辑请求参数,然后点击“execute”执行获得response,又可以在response中编辑返回的值提供给程序;
二、将请求地址映射到别的请求
1、如下图点击“Map Remote”,或选择对应接口鼠标右键点击进入;
2、进入“Edit Mapping”后,“Map From”填入原来的请求地址,“Map To”填入要映射的地址
三、过滤网络请求
1、在主界面的中部的 Filter 栏中填入需要过滤出来的关键字。例如我们的服务器的地址是:http://yuantiku.com , 那么只需要在 Filter 栏中填入 yuantiku 即可。该方法适合临时性的过滤
2、在 Charles 的菜单栏选择 “Proxy”–>“Recording Settings”,然后选择 Include 栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。该方法适合经常性的封包过滤
3、在想过滤的网络请求上右击,选择 “Focus”,之后在 Filter 一栏勾选上 Focussed 一项,如下图所示:
四、截取Https信息:需要安装证书
1、Charles上安装证书,点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate”,然后输入系统的帐号密码,即可在 KeyChain 看到添加好的证书。如下图所示:
2、需要注意的是,即使是安装完证书之后,Charles 默认也并不截取 Https 网络通讯的信息,如果你想对截取某个网站上的所有 Https 网络请求,可以在该请求上右击,选择 SSL proxy,如下图所示:这样就可以对该host的所有SSL请求截取了
3、若要在移动设备截取HTTPS内容,需要在手机上安装相应的证书。点击 Charles 的顶部菜单,选择 “Help” –> “SSL Proxying” –> “Install Charles Root Certificate on a Mobile Device or Remote Browser”,然后就可以看到 Charles 弹出的简单的安装教程。如下图所示:
按照我们之前说的教程,在设备上设置好 Charles 为代理后,在手机浏览器中访问地址:http://charlesproxy.com/getssl,即可打开证书安装的界面,安装完证书后,就可以截取手机上的 Https 通讯内容了。不过同样需要注意,默认情况下 Charles 并不做截取,你还需要在要截取的网络请求上右击,选择 SSL proxy 菜单项。
五、模拟弱网络
1、在 Charles 的菜单上,选择 “Proxy”–>“Throttle Setting” 项,在之后弹出的对话框中,我们可以勾选上 “Enable Throttling”,并且可以设置 Throttle Preset 的类型。如下图所示:
七、给服务器做压力测试:可使用repeat功能简单测试服务器并发处理能力
1、网络请求上(POST 或 GET 请求均可)右击,然后选择 「Repeat Advanced」菜单项,如下所示:
八、修改服务器返回内容:Charles提供了Map 功能、 Rewrite 功能以及 Breakpoints 功能,都可以达到修改服务器返回内容的目的
1、Map 功能适合长期地将某一些请求重定向到另一个网络地址或本地文件。
2、Rewrite 功能适合对网络请求进行一些正则替换。
3、Breakpoints 功能适合做一些临时性的修改。
Map 功能