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