1.在手机上设置HTTP代理,将手机与电脑连接。
打开手机设置-WLAN,设置代理
2.(iPhone)使用iPhone自带的浏览器打开Safari,并输入地址:,出现如下安装页面
3.点击右上角“安装”,在“警告”页面点击右上角“安装”,证书安装完成,点击右上角“完成”,查看手机“设置”-“通用”-“描述文件与设备管理”,确认Charles Proxy Custom Root Certificate已成功安装。
3.5在ios版本>=10.3的系统上,还需要多打开一步:
- 这是因为iOS 10.3 进一步增加了三方证书校验级别. CA授权的ssl证书是有证书链的, 这个会直接信任.
- charles代理使用的是自签名的root证书, 需要手动设置. 步骤如下:
- 关于本机->证书信任设置
- charles root证书信任
4.打开电脑上的charles工具,找到Proxy菜单-SSL Proxying Settings...-勾选Enable SSL Proxying。
5.点击Add,在“Edit Location”窗口填写如图,填好后点ok:
6.点击“OK”,关闭SSL Proxying Settings,Charles设置完成
7.在手机上打开任何界面,在电脑上的charles都可以抓取到请求了
1.启动charles后会有很多本级的请求接口刷屏而过,不再对这些请求进行抓取可去掉如下选中项
Proxy > Mac OS X Proxy
去掉该选中项后,不在抓取本机接口
2.手机挂代理至电脑–-保持手机跟电脑在同一wifi网络环境下
2.1打开手机网络高级设置,代理选择手动
2.2服务器:要挂载电脑的IP
2.3端口号:Charles的端口号(Proxy > Proxy Settings)默认端口号为8888,可以手动修改
2.4Charles会询问是否允许挂载,选择Allow(一部手机经常挂载后可能不会出现此提示,此时实验一下是否能抓到包,如果能证明已经挂载成功)
3.
如图所示:
filter可以过滤想要查询的接口
Request显示的为请求接口的详细信息
Response显示的为接口返回值
4.修改接口返回值:
绑定本地:
1.启动charles,手机挂接charles代理(Proxy > Proxy setting > porxies可修改端口号, Mac可使用"ifconfig en0" 查看主机IP)
手机需要与电脑保持统一网络,网络代理选择手动,端口号为charles设置的端口号
2.启动APP,查找需要修改返回值的接口
3.找到接口,查看返回值,copy返回值的JSON Text形式
4.将copy出的返回值保存至文件,文件格式为html
5.charles上选中接口,右键,选则Map Local,进入设置页面
6.清除Map form的Query值,Map to的Local Path值修改为第四步保存的HTML文件,点击OK
7.重新请求接口–done
说明:如遇version导致请求不到的问题,请手动修改HTML文件中的version号
解除本地绑定:
1.Tools > Map Local
2.取消本地文件选中,选择OK,搞定