Charles

Charles is a web debugging proxy that enables a developer to view all of the HTTP and SSL/HTTPS traffic between their machine and the internet. This includes deep inspection of requests, responses, headers, TLS information, compression and performance, and binary protocols such as Protobuf for both HTTP 1.1 and 2. Charles is perfect for debugging and measuring your web or mobile app’s API requests and responses.

安装

Charles 提供 Windows、Mac OS、Linux 三种平台的安装包。

这是一个付费软件,30天试用时间,超过试用时间每30分钟自动关闭一次。

官网下载比较慢,可以尝试第三方下载平台。

基于 Java 跨平台开发,应该会需要 Java 环境。

Windows、Mac OS 破解方式

Charles 在线破解工具

选择对应的版本,下载 charles.jar 到本地,然后替换文件。

  • Windows: C:\Program Files\Charles\lib\charles.jar
  • Mac OS:/Applications/Charles.app/Contents/Java/charles.jar

设置

1.设置代理

打开 Charles,顶部菜单中选择 Proxy,下拉菜单中去掉 macOS Proxy

2.激活 http 代理

打开 Charles,顶部菜单中选择 Proxy,下拉菜单中去掉 Proxy Settings

如图设置。

3.手机无线网 http 代理

电脑与手机连接同一个局域网,选择当前连接的无线网,修改网络,手动设置 http 代理。

代理服务器、主机地址填写电脑的 IP 地址,端口号填写 Proxy Settings 中的端口号,不修改,一般是 8888

4.测试是否可能

关闭 Charles 重新打开,会提示各种是否允许,一般情况允许。

例如手机打开微博应用:

操作界面

界面很简单,顶部是一些工具,例如清除、开始记录、刷新等,和 Chrome 浏览器的开发工具很像。

左侧是监听到的各种接口,有两个方式,一种是图上这样,以接口地址为集合。一种是时间顺序分开。

其他的可以个人多摸索了,一般情况都是查看某个接口的 Contents 浏览,这样就和浏览器中查看看很相似了。

右边的上面是请求相关内容,下面是返回的相关内容。

代理 HTTPS

以上设置只是代理了 http,现在众多服务以及开启了 https,如果用刚刚的设置打开,很多接口都会是乱码,所以,搞一波。

1.Charles 设置

打开 Charles,顶部菜单中选择 Proxy,下拉菜单中去掉 SSL Proxy Settings

如图设置,*:443 是代理所有服务的 https 的接口,如果不想的话,也可以单独开启几个接口。

2.手机安装证书

iOS 浏览器打开 www.charlesproxy.com/getssl 就会提示安装证书。

即使安装了证书也有些接口不能正常代理,设置 -> 通用 -> 关于本机 -> 证书信任设置 -> CA

关于 Android 手机,暂时未实践。

以上就结束了。

原本阅读:Mac OS 使用移动应用抓包调试利器 Charles


OnlyLing
215 声望3 粉丝

成长中的前端工程师。