Charles常用的功能总结.docx
- 文档编号:30766334
- 上传时间:2023-08-23
- 格式:DOCX
- 页数:15
- 大小:2.09MB
Charles常用的功能总结.docx
《Charles常用的功能总结.docx》由会员分享,可在线阅读,更多相关《Charles常用的功能总结.docx(15页珍藏版)》请在冰豆网上搜索。
Charles常用的功能总结
Charles常用的功能总结
1.过滤网络请求
2.截取iPhone上的网络封包
3.截取Https通讯信息
4.模拟慢速网络
5.修改网络请求内容
6.给服务器做压力测试
7.修改服务器返回内容
8.Map重定向功能
9.Rewrite功能
10.Breakpoints功能
11.设置ssl允许访问地址
12.查看连接本机charle代理的ip
13.设置请求的黑名单
14.缓存请求返回的内容
对于某一个具体的网络请求,你可以查看其详细的请求内容和响应内容。
如果请求内容是POST的表单,Charles会自动帮你将表单进行分项显示。
如果响应内容是JSON格式的,那么Charles可以自动帮你将JSON内容格式化,方便你查看。
如果响应内容是图片,那么Charles可以显示出图片的预览。
1.过滤网络请求
通常情况下,我们需要对网络请求进行过滤,只监控向指定目录服务器上发送的请求。
对于这种需求,以下几种办法:
方法一:
在主界面的中部的Filter栏中填入需要过滤出来的关键字。
例如我们的服务器的地址是:
那么只需要在Filter栏中填入csdn即可。
方法二:
在Charles的菜单栏选择“Proxy”->”RecordingSettings”,然后选择Include栏,选择添加一个项目,然后填入需要监控的协议,主机地址,端口号。
这样就可以只截取目标网站的封包了。
如下图所示:
方法三:
在想过滤的网络请求上右击,选择“Focus”,之后在Filter一栏勾选上Focussed一项,如下图所示:
2.截取iPhone上的网络封包
charles如何抓取http/https请求
3.截取Https通讯信息
charles如何抓取http/https请求
4.模拟慢速网络
在做移动开发的时候,我们常常需要模拟慢速网络或者高延迟的网络,以测试在移动网络下,应用的表现是否正常。
Charles对此需求提供了很好的支持。
在Charles的菜单上,选择“Proxy”->”ThrottleSetting”项,在之后弹出的对话框中,我们可以勾选上“EnableThrottling”,并且可以设置ThrottlePreset的类型。
如下图所示:
5.修改网络请求地址
dns欺骗,说简单点就是把域名解析到一个假的ip,
可以不必一定要用locahost,127.0.0.1,装个B把XX对应到京东来调试~
选择Tools->DNSSpoofing,设置如下图:
6.给服务器做压力测试
7.修改服务器返回内容
有些时候我们想让服务器返回一些指定的内容,方便我们调试一些特殊情况。
例如列表页面为空的情况,数据异常的情况,部分耗时的网络请求超时的情况等。
如果没有Charles,要服务器配合构造相应的数据显得会比较麻烦。
这个时候,使用Charles相关的功能就可以满足我们的需求。
根据具体的需求,Charles提供了Map功能、Rewrite功能以及Breakpoints功能,都可以达到修改服务器返回内容的目的。
这三者在功能上的差异是:
△Map功能适合长期地将某一些请求重定向到另一个网络地址或本地文件。
△Rewrite功能适合对网络请求进行一些正则替换。
△Breakpoints功能适合做一些临时性的修改。
8.Map重定向功能
Charles的Map功能分MapRemote和MapLocal两种,顾名思义,MapRemote是将指定的网络请求重定向到另一个网址请求地址,MapLocal是将指定的网络请求重定向到本地文件。
在Charles的菜单中,选择“Tools”->”MapRemote”或“MapLocal”即可进入到相应功能的设置页面。
△对于MapLocal功能,我们需要填写的重定向的源地址和本地的目标文件。
对于有一些复杂的网络请求结果,我们可以先使用Charles提供的“SaveResponse…”功能,将请求结果保存到本地(如下图所示),然后稍加修改,成为我们的目标映射文件。
9.Rewrite功能
△Rewrite功能功能适合对某一类网络请求进行一些正则替换,以达到修改结果的目的。
例如,我们的客户端有一个API请求是获得用户余额,而我当前的余额是“17.06”,如下所示:
重写设置:
再次请求,余额变成了2222,重写成功。
10.Breakpoints功能
上面提供的Rewrite功能最适合做批量和长期的替换,但是很多时候,我们只是想临时修改一次网络请求结果,这个时候,使用Rewrite功能虽然也可以达到目的,但是过于麻烦,对于临时性的修改,我们最好使用Breakpoints功能。
Breakpoints功能类似我们在Xcode中设置的断点一样,当指定的网络请求发生时,Charles会截获该请求,这个时候,我们可以在Charles中临时修改网络请求的返回内容。
下图是我们临时修改获取用户信息的API,将用户的昵称进行了更改,修改完成后点击“Execute”则可以让网络请求继续进行。
按照上边设置好以后,再次访问接口将会有断点提示,进入编辑返回的内容即可(我在运用时很奇怪,设置成功后,得退出一次charles程序,再启动才会有断点界面)
11.设置ssl允许访问地址
12.看连接本机charle代理的ip
有非法的remove掉即可
13.设置请求的黑名单
不想某些请求发起,直接返回404,可以用黑名单
选择Tools->BlackList,设置如下图:
14.缓存请求返回的内容
这个我用来干过做缓存数据用,让app在没有server的时候也能跑,
选择Tools->Mirror,设置如下图:
———————————————
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Charles 常用 功能 总结