Charles 又名“青花瓷”,以其ICON得名。
用途:
网络请求抓包、模拟网络延迟、修改网络参数(request\response)等。
使用场景
项目规模较大,流程较多,需要对某个网络请求进行监测和调试,并测试接口在返回不同数据时前端的处理是否符合预期。
可能会有同学说,使用Xcode断点就可以了呀! 是的,当项目比较简单的时候,使用Xcode断点配合debug控制台使用LLDB命令就可以了。
BUT 当你遇到Xcode 本身断点添加后项目运行缓慢,或者断点有时不起左右的时候,用它,Charles!
痛过才知好用
最近新接手一个大(规模)项目,断点何其多!上图!
项目运行起来后,在打断点的地方,偶尔会断不住,导致好不容易创建的测试数据被浪费掉,浪费宝贵时间。
配置Breakpoint
Breakpoint(断点),但是是Charles的断点, 可以拦截网络请求,然后修改该请求的header body等参数,然后发出请求。这样就可以方便的修改请求数据,模拟各种场景。
20210702175356.jpg 20210702175532.jpg
输入想要拦截的请求URL:
20210702175906.jpg 20210702175955.jpg
完成上面的配置后,请求发生时,Charles会自动进入拦截窗口(如下图)
20210702181117.jpg 20210702181331.jpg
点击完Execute按钮,编辑后的请求就会发出,然后客户端就会收到一个修改后的请求response.
网友评论