charles 镜像工具

🌙
手机阅读
本文目录结构

charles 镜像

镜像工具会在你浏览指定网站时,把抓取到的文件克隆一份,并保存在你指定的路径下;

注意:如果你配置是www.aaa.com; 那么只会抓这个域名下的文件,这个域名如果引用了123.abc.com的外部资源(如前端CSS,JS等),引用的外部资源并不会被保存;

charles一般用于捕获确定的资源;如果你想把别人的整站clone下来,推荐用httrack这个工具,charles在clone网站上做的并不好,可以说是非常垃圾的战五渣。

但储存目标的少量文件还是没问题的;

image

image

保存文件的路径会与你浏览网站的目录结构相同,并且charles会为主机名创建一个根目录。文件名从URL导出并转换为适合的数据进行保存。

实际中的应用:你可以把访问的数据缓存下来,让app在没有server的时候,通过map Local 映射到你抓取到的文件,这样app也能继续跑;

你也可以用镜像工具保存网站内容后,通过map Local 映射到你抓取到的文件;通过修改文件,达到本地的线上调试的功能(你调试的内容因为用的资源都是本机的,所以并不会真正的影响到线上文件的);

查询字符串包含在文件名中

如果收到相同URL的两个响应,则后面一个文件会覆盖前面的同名文件,因此您保存是镜像中的最新数据。
镜像工具在数据通过Charles时就开始储存了,因此不受模拟慢速设置的限制影响(慢网速只是对你本地的前端看到效果有影响,但是真正速度还是实际速度)。

所选HOST

该工具可以针对每个请求启用,也可以仅对选定的host启用。
当然,如果你设置host的时候,所写的资源,路径等都可以用模式匹配。星号”*”和”?”都是可以用的;

替代方法(右键save)

在使用“镜像”工具之后,您也可以右键单击charles目录中的一个节点(文件/文件夹),在捕获记录后将所有抓取结果保存本地,这会配置镜像更具更加简单,而且避免一些垃圾文件。

image

唯一的区别就是镜像工具不受录制设置中设置的录制限制,而后来的保存响应是有限的,可能在模拟慢速的时候存在丢失数据的情况。

可能会遇到的坑

如果镜像工具启用了,它将导致任何压缩或编码的响应被解码。

因此,如果服务器提供了一份压缩后的响应,那么在被传递给客户端之前,它将被Charles解压缩(charles相当于是客户端和服务端之间的一个过滤器,任何请求和响应都会经过charles);
即时返回了一份解压缩后的文件,一般也不会有任何影响的;
但如果您已经构建了自己的客户端,或者你本身就是想要那种压缩的响应,那么此时你是得不到的;

AXIHE / 精选教程

浏览全部教程

HTML

CSS

JS

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

如果你加我的私人微信,麻烦写上您的 称呼,所在地区,职业,方便我备注,谢谢


本站的微信公众号

阿西河前端教程

Anbang

安邦的私人微信

微信号: yaolushan

Anbang

Bilibili(B站)

朱安邦

Anbang