使用 iOS 模拟器调试网络请求,网络请求数据未显示

Debugging network requests with iOS Simulator, network request data is not showing

我正在尝试在 ios 模拟器中调试基于 hybrid/webview cordova 的应用程序的网络请求,实际上在 Safari Web Inspector 中看到了网络请求。我正在尝试使用 Safari 中的 Web Inspector 来监视对服务器的网络请求,但我看到的只是 "timeline" 图表,我没有看到实际的 URI 请求。有没有办法启用它?

我通过 xcode 构建我的应用程序。使用 iPad2 selected/iOS 8.1 启动 iOS 模拟器。然后我启动 Safari 和 select "ios simulator/index.html" 来启动网络检查器。然后点击网络请求。当我进行 Web 请求调用时,资源选项卡窗格为空。有没有办法解决这个问题,以便我可以看到 url 请求?

我不太确定是否可以通过网络检查器来做到这一点,但为了以防万一,我还是选择了选项 1。我强烈建议您选择选项 2。

选项 1

首先确保你没有过滤任何东西,然后确保如图所示打开录音。

选项 2。推荐

使用http监控工具。它们旨在执行该特定任务,而且您可以获得更多选项,例如断点等。

  • Charles Proxy。 (MAC) 最好的恕我直言。如果需要,您可以设置断点和更改 request/response。以及许多其他功能。
  • HttpScoop (MAC) 更易于使用,但功能较少。
  • fiddler (WINDOWS) 以防万一。

PS。有人可能会说 Wireshark,我知道,但这样的工作太复杂了。

[更新 1] 为了清楚起见,您无需在 iOS 模拟器上设置任何代理即可让这些工具正常工作。如果是 SSL 连接,您想使用 charles 并遵循他们的 SSL guideline.

出于以下原因,我使用 Proxyman 从 iOS 模拟器监控网络流量 -

  • 它有一套清晰的说明,说明如何使用两者进行设置 iOS 模拟器Android emulators.
  • 它具有简单、直观的 UI,使其易于使用。

此外,您可能会发现值得一读 this Whosebug post