前言

本文将带大家学习使用前端开发神器-charles,从基本的下载安装到常见配置使用,为大家一一讲解。

一、花式夸奖Charles

  • 截取 Http 和 Https 网络封包。
  • 支持重发网络请求,方便后端调试。
  • 支持修改网络请求参数。
  • 支持网络请求的截获并动态修改。
  • 支持模拟慢速网络。

好,骑上我心爱的小摩托,准备上路...

二、下载与安装

官网下载传送门

本文所使用的的版本为 mac V4.5.6版本,不同版本间的具体化差异,大家可留言交流。

Charles破解工具可通过关注公众号「胡哥有话说」,回复关键字charles获得。

三、简单入门-抓包所有请求

  1. 打开Charles,勾选Proxy下的macOS Proxy(如果是windows,此处为Windows Proxy)
  2. 点击Proxy->Start Recording,打开浏览器访问任意页面,可以在Charles中看到请求了。

很好,现在已经上路了,学习的路上永不堵车...

四、设置过滤请求

通过上面的操作,我们已经抓包了所有的请求,实际开发中可能是专门针对某些接口(如百度域名下的接口),我们可以专门配置过滤接口。

  1. 临时性过滤配置

    在展示界面的Filter中可进行条件过滤

    同时可在右侧的settings中配置使用正则来进行过滤

  2. 永久性过滤配置

    通过Proxy->Recording Settings->include中配置过滤条件

Ok,我们又前进了一大步

五、代理转发请求

通过CharlesMap RemoteMap Local我们也可以配置代理转发请求。

Map Remote

Map Remote 远程映射,是将指定的网络请求重定向到另一个网址

业务场景:

某些服务端的文件请求时限制某些特定域名(*.baidu.com),我们使用localhost启动项目时,会导致没有权限访问。通过配置Map Remote远程映射解决问题。

配置路径:

设置Tools->Map Remote



如图上的配置,本地启动的项目地址为:http://localhost:8080(或 http://127.0.0.1:8080),现在再访问,可以使用路径 http://test.baidu.com访问即可。

注意Enable Map Remote一定要勾选,以及相应规则也要勾选,否则不会生效

Map Local

Map Local 本地映射,是指将指定的网络请求重定向到本地的文件

业务场景:

在本地化的开发中,接口数据Mock;或者是线上环境问题排查时,将请求重定向到本地文件以方便排查。

配置路径:

设置Tools->Map Local



通过如上图的配置,请求 aa.baidu.com:443/index时,会被映射到本地 /xx/index.json

注意Enable Map Local一定要勾选,以及相关规则也要勾选,否则不会生效。

六、手机抓包

手机抓包请求也是我们日常开发中需要用到的,那如何利用Charles抓包手机请求呢。

  1. 设置Charles的代理端口号

    通过设置Proxy->Proxy Settings->Proxies->HTTP Proxy下的Port端口号

  2. 查看本地IP地址

    通过CharlesHelp->Local IP Address查看,本机IP为xx.xx.xx.xx

  3. 手机和电脑需要处于同于wifi网络内

  4. 手机wifi网络配置

    以华为mate 30为例,选择对应的wifi,选择显示高级选项,设置代理为手动

    设置服务器主机名为:xx.xx.xx.xx(刚才查看的电脑IP)

    设置服务器端口为:8888(刚才设置的port)

    点击保存后,手机的请求就可以在Charles中查看啦...

    注意链接时,Charles会弹出授权窗口,要选择Allow

七、限速设置

通过设置Proxy->Throttle Settings来进行速度限制

注意:一定要勾选 Enable Throttling选项

小结

以上是给大家分享的Charles的常见使用配置,如有相关问题可留言交流。

后记

以上就是胡哥今天给大家分享的内容,喜欢的小伙伴记得点赞收藏呦,关注胡哥有话说,学习前端不迷路,欢迎多多留言交流...

胡哥有话说,一个有技术,有情怀的胡哥!现任京东前端攻城狮一枚。

胡哥有话说,专注于大前端技术领域,分享前端系统架构,框架实现原理,最新最高效的技术实践!

前端开发神器Charles从入门到卸载的更多相关文章

  1. webstorm+nodejs+JetBrains IDE Support+chrome打造前端开发神器

    #webstorm+nodejs+JetBrains IDE Support+chrome打造前端开发神器 -- 工欲善其事 必先利其器 ##各工具介绍 `webstorm`是**JetBrains* ...

  2. Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版

    WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...

  3. 前端开发神器 VSCode 使用总结

    VSCode 是微软出品的,基于 Electron 和 TypeScript 的,集成了 git 版本管理和命令行终端,而且开源稳定,插件丰富,再搭配一款 Chrome 浏览器,可以说是前端开发神器了 ...

  4. 1. web前端开发分享-css,js入门篇

    关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人与人的教育背景与成长环境心理活动都有差别,但就别人的心得再结合自己的特点,然后探索适合自己的学 ...

  5. web前端开发分享-css,js入门篇(转)

    转自:http://www.cnblogs.com/jikey/p/3600308.html 关注前端这么多年,没有大的成就,就入门期间积累了不少技巧与心得,跟大家分享一下,不一定都适合每个人,毕竟人 ...

  6. Sublime Text 使用指南 - 前端开发神器

    Sublime Text 前端开发的神器 Sublime Text是一个前端开发者必备的编辑器,大量的插件,完善的功能,优越的性能,有非常多的特色,给前端开发提供了一个完善的开发条件. 本文主要介绍的 ...

  7. web前端开发分享-css,js入门篇

    学习没有捷径,但学习是有技巧与方法.   一,css入门篇:   推荐书籍:css哪些事儿,精通css. 理由:css那些事儿,他是一本介绍css基础类的书,是入门的经典读物. 系统的介绍了css的选 ...

  8. 前端开发神器 - Brackets

    做了几年的 .Net 项目开发,后来公司转 Java 语言开发,Java 做了还没一年,公司准备前后端分离开发,而我被分到前端! Brackets是一款基于web(html+css+js)开发的web ...

  9. 前端开发神器Sublime Text2/3之安装使用(windows7/Mac)

    一,到官方网站下载神器 地址:http://www.sublimetext.com/3 Sublime Text 3 配置解释(默认){// 设置主题文件“color_scheme”: “Packag ...

随机推荐

  1. PAT 1036 Boys vs Girls (25分) 比大小而已

    题目 This time you are asked to tell the difference between the lowest grade of all the male students ...

  2. PowerPC-Link Command File解析

    https://mp.weixin.qq.com/s/CATWma2mv5IPYGtKZLuGDA   以Code Warrior 11生成的flash版本(FLASH.lcf)为例   一. 参考资 ...

  3. Rocket - util - LanePositionedQueue

    https://mp.weixin.qq.com/s/yO_9Ec3S5-AosRVLpsBgOg   简单介绍基于通道位置的队列(LanePositionedQueue)的实现.   ​​   1. ...

  4. Chisel3 - 模块

    https://mp.weixin.qq.com/s/2vjM-gcauvHnn6KJzlOm4g   Chisel的模块和Verilog的模块很相似,都用来定义模块结构(hierarchical s ...

  5. 50个SQL语句(MySQL版) 问题十六

    --------------------------表结构-------------------------- student(StuId,StuName,StuAge,StuSex) 学生表 tea ...

  6. Username for 'https://github.com': remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/GLSmile/pythontest.git/' 问题

    使用$ git push -u origin master 进行同步时,提示输入用户名和密码,但是我输入正确的信息后,仍然 会报Username for 'https://github.com': r ...

  7. 【Storm】与Hadoop的区别

    1)Storm用于实时计算,Hadoop用于离线计算. 2)Storm处理的数据保存在内存中,源源不断:Hadoop处理的数据保存在文件系统中,一批一批处 理. 3)Storm的数据通过网络传输进来: ...

  8. Java实现 LeetCode 263 丑数

    263. 丑数 编写一个程序判断给定的数是否为丑数. 丑数就是只包含质因数 2, 3, 5 的正整数. 示例 1: 输入: 6 输出: true 解释: 6 = 2 × 3 示例 2: 输入: 8 输 ...

  9. Java实现 蓝桥杯VIP 算法训练 字符串编辑

    算法训练 字符串编辑 时间限制:1.0s 内存限制:512.0MB 问题描述 从键盘输入一个字符串(长度<=40个字符),并以字符 '.' 结束.编辑功能有: 1 D:删除一个字符,命令的方式为 ...

  10. Java实现第八届蓝桥杯图形排版

    标题:图形排版 小明需要在一篇文档中加入 N 张图片,其中第 i 张图片的宽度是 Wi,高度是 Hi. 假设纸张的宽度是 M,小明使用的文档编辑工具会用以下方式对图片进行自动排版: 1. 该工具会按照 ...