拦截从 ios 应用程序发送到服务的请求,从 Python 和 Appium
Intercept the request send from an ios app to a service, from Python and Appium
我正在开发 mac,我正在尝试在 iPhone 上自动化某个应用程序,有时我需要验证该应用程序发送给服务的请求(更准确地说是 JSON 请求)。我正在使用 Appium 连接到 phone 和 Python 来编写脚本。
我知道 instruments 有一个网络功能,可以让你检查应用程序的网络流量,但我不确定它是否也显示 JSON 请求。
所以,我正在等待拦截 json 请求并在 python 脚本中做出一些断言。有人知道一些方法吗?
几个月前我也遇到过类似的问题,一些根本不关心自动化的笨蛋也对我投了反对票。但无论如何你有两个解决这个问题的方法。我不确定仪器的功能,所以不会对此发表评论。
1) 使用 idevicesyslog 基本上可以在终端中查看您的应用程序的所有日志,将它们发送到一个文件并根据您要查找的内容解析该文件。更多信息在这里 http://krypted.com/tag/idevicesyslog/
但显然需要打开应用日志才能正常工作。
2) 您将需要使用代理来基本上嗅探您的应用发出的 http 请求。现在,大多数商业发送的流量都是 HTTPS,因此您可能 运行 遇到安全流量的证书问题。为了使安全请求正常工作,您需要一个稳定的代理来嗅探带有证书和所有内容的流量。我建议看看查尔斯代理。更多信息在这里 Charles
我正在开发 mac,我正在尝试在 iPhone 上自动化某个应用程序,有时我需要验证该应用程序发送给服务的请求(更准确地说是 JSON 请求)。我正在使用 Appium 连接到 phone 和 Python 来编写脚本。
我知道 instruments 有一个网络功能,可以让你检查应用程序的网络流量,但我不确定它是否也显示 JSON 请求。
所以,我正在等待拦截 json 请求并在 python 脚本中做出一些断言。有人知道一些方法吗?
几个月前我也遇到过类似的问题,一些根本不关心自动化的笨蛋也对我投了反对票。但无论如何你有两个解决这个问题的方法。我不确定仪器的功能,所以不会对此发表评论。
1) 使用 idevicesyslog 基本上可以在终端中查看您的应用程序的所有日志,将它们发送到一个文件并根据您要查找的内容解析该文件。更多信息在这里 http://krypted.com/tag/idevicesyslog/
但显然需要打开应用日志才能正常工作。
2) 您将需要使用代理来基本上嗅探您的应用发出的 http 请求。现在,大多数商业发送的流量都是 HTTPS,因此您可能 运行 遇到安全流量的证书问题。为了使安全请求正常工作,您需要一个稳定的代理来嗅探带有证书和所有内容的流量。我建议看看查尔斯代理。更多信息在这里 Charles