Charles是在 Mac 下经常使用的网络封包截取工具,在作移动开发时,咱们为了调试与服务器端的网络通信协议,经常须要截取网络封包来分析。后端
Charles 经过将本身设置成系统的网络访问代理服务器,使得全部的网络访问请求都经过它来完成,从而实现了网络封包的截取和分析。浏览器
Charles 主要的功能包括:服务器
Charles 主要提供两种查看封包的视图,分别名为 “Structure” 和 “Sequence”。 网络
(例如要抓取进入http://bj.58.com的请求,并修改服务器返回的内容)工具
打开charles,点击开始录制按钮,打开浏览器,在网址处输入地址,回车,在进入charles,咱们就看到抓取到了这个请求代理
选中此请求,右键,选中断点。调试
打开浏览器,从新刷新http://bj.58.com这个界面,charles自动弹出breakpoints这个tab页,说明charles成功拦截了此请求,咱们能够在此界面修改请求,而后点击execute将修改后的请求发送至服务器blog
服务器处理请求后,发送response给客户端,charles自动拦截此response,以下,咱们能够修改Edit Response的内容,修改服务器返回的内容,以下,咱们修改了返回的界面某个内容展示,再点击execute,将此response成功返回给客户端。排序
打开浏览器,能够看到返回的界面内容被修改为功开发