我有一个 API 调用,当通过浏览器发出请求时,它会发送以下响应,
{'Status': {'Code': 4, 'Message': 'Please wait'}}
几秒钟后,响应变为
{'Status': {'Code': 0, 'Message': 'The request is successful', 'TransactionId': 456719}}
我可以从浏览器开发者工具的网络选项卡中看到这一点。
在Python中,如果我在两次执行请求的同时使用sleep,我会得到第二个响应。但是我可以在不执行两次 API 调用的情况下实现这一目标吗?
我想通了。对于将来遇到同样问题的人,在使用请求进行调用后,我在解析响应之前增加了 time.sleep 并且它起作用了。我最初将其设置为
time.sleep(5)
response = requests.request("POST", url, json=req_json)
time.sleep(10)
response = response.json()
我仍然需要等待10秒并且无法使等待时间动态化。因此,如果我在 6 秒内得到第二个响应,我仍然浪费 4 秒,但我可以忍受这一点。如果有人有更好的解决方案,请在这里发帖。