Charles使用

Charles 主要的功能

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

将Charles 设置成系统代理

选择菜单中的”Proxy” -> “Mac OX Proxy” 将Charles设置成系统代理。
这样就可以看到本机的网络强求了…

过滤网络请求

  1. 在Filter中填入你想过需要的关键字
  2. 选择菜单”Proxy” -> “Recording Setting” -> “Include”,添加一个项目,填入监控的协议,主机地址,端口号,就可以只截取目标网站的封包。
  3. 在想过滤的网络请求上右击,选择 “Focus”,之后在 Filter 一栏勾选上 Focussed 一项
  4. 其中1、3是临时性的, 2是经常性的。

截取iPhone上的网络封包

  1. Charles 设置
    将 Charles 的代理功能打开, 选择菜单”Proxy” -> “Proxy Settings”, 在Port填入代理端口8080,并且勾上”Enable transparent HTTP proxying”,如图:
  2. iPhone设置
    2.1 获取电脑IP地址 // 192.168.0.127
    选择菜单”Help” -> “Local IP Address”查看本机IP
    2.2 iPhone设置 -> Wi-Fi -> 当前连接的wifi -> 点击右侧详情按钮 -> 底部HTTP代理选择手动 -> 服务器填上电脑的IP地址 -> 端口号填 8080
  3. 电脑Chroles会弹出一个是否确认的菜单,选择Allow!!! OK,完成!

HTTP抓包

  1. 打开Charles程序
  2. 查看Mac电脑的IP地址,如192.168.1.7
  3. 打开iOS设置,进入当前wifi连接,设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888
  4. iOS设备打开你要抓包的app进行网络操作
  5. Charles弹出确认框,点击Allow按钮即可

HTTPS抓包

  1. 在 iOS 设备上打开这个网址 http://www.charlesproxy.com/getssl 安装 Charles SSL 证书
  2. 在Charles的工具栏上点击设置按钮,选择Proxy Settings…3
  3. 切换到SSL选项卡,选中Enable SSL Proxying,别急,选完先别关掉,还有下一步
  4. 这一步跟Fiddler不同,Fiddler安装证书后就可以抓HTTPS网址的包了,Charles则麻烦一些,需要在上一步的SSL选项卡的Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443


-------------The End-------------

本文标题:Charles使用

文章作者:kysonyangs

发布时间:2016年06月10日 - 18:06

最后更新:2020年05月17日 - 16:05

原始链接:https://kysonyangs.github.io/default/Charles使用/

许可协议: 署名-非商业性使用-禁止演绎 4.0 国际 转载请保留原文链接及作者。