如何查看iOS设备上的网络流量?

时间:2018-01-25 20:13:02

标签: ios

我正在开发一款iOS应用程序,用于比较Target,Sam's Club和Walmart等商店。我的应用使用代码复制其网站所做的操作,以JSONXML格式获取所有产品信息。

问题

我想要在我的应用中包含的其他一些商店乍看之下没有办法获取商品信息。但有些人有一个应用程序,以H-E-B为例。他们的应用程序以某种方式获取所有产品信息,格式可以转换为Swift 4。

可能的解决方案

H-E-B的应用显然正在获取URL的内容,其中包含我需要的数据。我几乎100%确定他们是某种类型的日志。我想知道如何查看此日志。

2 个答案:

答案 0 :(得分:1)

请求中没有日志文件,但您可以使用Charlesmitmproxy等代理应用查看其他应用的流量。

Charles和mitmproxy都可以拦截iOS设备上的网络流量。您需要在Mac上安装它们并配置iOS代理设置。有关详细信息,请查看Charles' FAQ, Section "iOS"

只要应用程序不使用公钥固定作为对策,这甚至适用于HTTPS流量。

答案 1 :(得分:1)

这不是一个好习惯。即使您能够以某种方式查看日志,API也可能会被更改为tommorow,您的应用将停止工作。

如果您尝试列出来自不同商店的产品,那么您必须询问商店是否提供任何API以获取产品详细信息。否则拦截日志并找到方法并不是一个好习惯,除非你是为了好玩。

您可以使用一种解决方案。让你自己的应用服务器,其责任将收集应用程序的数据。如果您的提供商有任何变化,您可以动态更改它。这是一种可能的解决方案,但不建议使用。