如何使用 Proxyman 抓取 iOS 15 模拟器的网络流量
你是否遇到过这种情况:调用 API 时 Xcode 没有显示任何错误,但应用中却没有显示任何数据?你是否想过检查网络请求,以调试自己的应用?在本教程中,我们将演示如何将 Proxyman 用作中间人代理,抓取并检查 iOS 模拟器上的网络流量。
1. 前提条件
- 下载并设置 最新版本的 Proxyman
- 在 Mac 上使用 Xcode 11.4 或更高版本
2. 开始使用
-
本教程使用 Alamofire 作为调试示例应用。你可以在这里找到源代码。
-
Proxyman 下载并安装成功后,网络流量会立即显示在 Proxyman 窗口中。

虽然 Proxyman 和示例项目都已运行,但目前还看不到任何流量。接下来,我们在模拟器上安装 Proxyman 证书!
3. 在 iOS 模拟器上安装证书
在标签栏(Tab bar)菜单中,选择 Certificate -> Install Certificate on iOS -> Simulators。

4. 在 iOS 模拟器上安装并信任 Proxyman 证书
Proxyman 提供了设置向导,帮你省去所有手动操作。在设置窗口中点击 Install and Trust,它会自动为你配置证书。

5. 重启 iOS 模拟器
接下来需要重启模拟器。只需点击 Reboot ……即可开始抓取 iOS 模拟器的网络流量。

6. 查看网络流量
安装证书并重启模拟器后,你可以重新运行应用并发起 API 调用。Proxyman 会抓取请求和响应,并显示其内容,方便你调试。

7. 小贴士与注意事项
7.1 Proxyman 可以检测正在运行的模拟器数量
值得一提的是,Proxyman 可以自动检测并告知你有多少个模拟器正在运行。因此,如果你还没有启动应用,或者已经停止运行应用,窗口会显示如下:

如果同时运行了 2 个模拟器,Proxyman 同样会告知你:

7.2 如果无法看到 iOS 模拟器的流量怎么办?
如果在 iOS 模拟器上遇到任何 SSL 错误,或无法看到 HTTP/HTTPS 请求,请查阅 Proxyman 文档中的故障排除部分,看看能否解决问题。如果仍然无法解决,请随时给我们发邮件,我们很乐意帮你解决。
8. 总结
网络请求有时可能很棘手,也很令人头疼,但有了 Proxyman,调试它们就会变得轻而易举。Proxyman 或其他中间人(MITM)代理工具,都可以帮助你抓取并检查 iOS 模拟器的 HTTP/HTTPS 流量。如果你想成为网络调试高手,可以阅读我们关于 Proxyman 高级功能的系列文章,例如 Map Local、Breakpoint 和 Scripting 工具,它们可以帮助你修改 HTTP/HTTPS 请求和响应。
希望你喜欢本教程。祝调试愉快!👨🏻🚀
实用更新
同样的设置也适用于当前版本的 iOS 模拟器:先启动模拟器,再运行 Proxyman 证书设置。如果你抹掉了模拟器、新建了一个模拟器,或重置了其内容,请重新安装证书。当预期的请求没有出现时,先重新发起一次请求,并检查应用返回的是否为缓存响应,然后再修改代理设置。
Proxyman 是一款高性能的 macOS 应用,可帮助开发者抓取并检查 iOS 设备、iOS 模拟器和 Android 设备上应用与域名的 HTTP(s) 流量。
