Do u know Charles? Who is Charles?

Charles 是一个抓包工具

Posted by mslinzz on 2017-11-08

前言

对于开发者调试工具肯定得有, 网页开发用浏览器的开发者检测就够了, 但是在移动设备中, 在微信客户端内等等, 出现哑语的 BUG 时候, 就需要用到 抓包 工具了, 微信有微信开发者工具可以调试, 但需要开发者认证账户, 另外网页请求也有工具可以调试, 曾用过 fiddler, 但这里介绍一下 Charles, 但是两者的原理及用法是相似的. by the way 我喜欢 Charles 的 LOGO, 我也有类似这样的一个杯子. @-@

Charles

Charles 是一个 HTTP 代理服务器, HTTP 监视器, 反转代理服务器,当浏览器连接 Charles 的代理访问互联网时,Charles 可以监控浏览器发送和接收的所有数据。它允许一个开发者查看所有连接互联网的 HTTP 通信,这些包括 request, response 和 HTTP headers (包含 cookies 与 caching 信息)。

环境

Charles v-4.2

MacBook Pro v-10.11.6 (15G31)

iPhone 7 v-11.1

如何配置?

1. 首先, 保持移动设备和 Charles 所在的设备是同一个网络环境, 连着同一个 wifi.

2. 点开移动设备 => 设置 => 无线局域网 => wifi HTTP 配置代理 => 选择手动 => 填写服务器 IP 和端口

这里想要说明的是, 服务器是填写你电脑上的本机 IP, 查看 IP 的方法:

  • terminal Shell
1
ifconfig
  • Charles => Help => Local IP Address

另外, 端口默认写 8888, 最后别忘了点确认.

3. 配置好后, Charles 会自动弹出一个确认框, 选择 Allow, 就连接好了.

如果没有弹出确认框, 去试试 IP 是否可以访问, 打开移动端浏览器, 访问:

1
http://172.xx.xx.xx:8888

看看提示, 如果提示初始化或连接 Charles 失败, 那就重新在切换移动设备的 wifi, 再次操作上述的步骤.

注意: 我所在网络内网连接需要个人账号认证, 如果有此类情况, 先认证登录账号, 在修改服务器和端口配置.

官网

Charles 官网