写在前面
这篇文章主要给大家介绍一下如何使用charles对App及PC端应用进行抓包
1.App抓包
- 0."关掉电脑防火墙"
- 1.手机与电脑连同一个wifi
- 2.对手机所连WIFI设置HTTP代理(找到所连wifi,进入高级设置):
- 代理服务器主机名(Proxy Hostname): 电脑IP
- 代理服务器端口自(Proxy Port):Charles代理端口 (
查看方法:Charles -> Proxy -> Proxy Settings -> Port
)
- 3.保持电脑上Charles处于打开状态
- App抓包时必须关闭(不勾选)
Windows Proxy
:Proxy -> Windows Proxy
- PC端抓包时必须开启(勾选)
Windows Proxy
:Proxy -> Windows Proxy
- App抓包时必须关闭(不勾选)
- 4.安装证书
安装证书时注意: (1)设置好手机HTTP代理 (2)电脑上Charles要打开
- 电脑证书
在Charles客户端中:Help -> SSL Proxying -> Install Charles Root Certificate
- 手机证书
- ios: 在浏览器中访问
chls.pro/ssl
- android: 在浏览器中访问
http://charlesproxy.com/getssl
- ios: 在浏览器中访问
- 电脑证书
- 5.
https
抓包Proxy -> SSL Proxying Settings -> Enable SSL Proxying -> 添加要抓取的https请求的地址(或
*:*
) -
- 触发请求,即可在
charles
中看到请求详情
- 触发请求,即可在
2.PC端抓包
-
- 勾选
Windows Proxy
:Proxy -> Windows Proxy
- 勾选
-
- 触发请求,即可在
charles
中看到请求详情
- 触发请求,即可在
3.代理本地请求
在开发中,前端有时需要同时和多个后端联调,如果前端应用修改请求服务地址后需要重启应用,那么会很痛苦,使用charles代理本地请求则可以让你不再为之所困。
-
- 勾选
Windows Proxy
:Proxy -> Windows Proxy
- 勾选
-
Tools -> Map Remote
From: http localhost.charlesproxy.com 9000 /api/* To: http xx.xx.xx.xx port(必填) <空> /api/
- 3.浏览器打开:
localhost.charlesproxy.com:9000
- 4.触发请求,即可在
charles
中看到请求详情
写在最后
Charles 的功能很强大,还可以修改请求及响应,模拟慢速网络,简单地测试服务器的并发处理能力等,大家感兴趣的可以去研究下。