excel - VBA 中的 REST GET 调用返回“完成此操作所需的数据尚不可用”
问题描述
我正在处理从 excel vba 到我的数据库的 REST API 调用,并且我在使用带有参数的特定 GET 调用时遇到问题。错误是“运行时错误'-2147483638(80000000a)':完成此操作所需的数据尚不可用”。
以前在其中一种环境中,我可以通过输入 40 秒的 Application.wait 来绕过它。但是我有另一个更慢的环境,并且没有多少等待时间会导致数据填充到 .responseText 中。在 vba 之外,通话在 50 秒内有效,所以我尝试了 50 到 8 分钟,但没有运气。关于如何让这个 GET 调用在这个较慢的环境中工作的任何想法?
下面是我正在使用的代码:
URL = ".../?q=%7B%22testid%22:%22" & vSAMPLE_ID & "%22%7D"
http.Open "GET", URL, True
http.setRequestHeader "Accept", "application/json"
http.setRequestHeader "Accept-Encoding", "application/json"
http.send
Application.Wait (Now + TimeValue("0:01:20"))
vRESTRESPONSE = http.ResponseText
解决方案
你能不能不异步请求,所以等待响应多长时间都没关系?(只要服务器没有使请求超时)或者下一步是否依赖于该请求的响应?
推荐阅读
- javascript - 如何使用时间间隔 jQuery 将表行拆分为固定行
- sql - 如何在缺少逗号和数据的情况下进行拆分
- python - 如何在不在python中创建新列表的情况下将列表中的字符串分成子字符串
- python - 使用 VPython 进行 2D 弹性碰撞中的粘性块
- continuous-integration - 每个 Concourse 环境都需要一个团队吗?
- amazon-web-services - 是否可以共享/下载 AWS 启动模板?
- javascript - js: str.replace() 与 Promise
- android - 使用 mvvm 模式使用静态数组将数据绑定到 Spinner
- javascript - 如何在通过单击电子邮件中提供的超链接加载网站时向用户显示消息
- mongodb - 将 MongoDB 集合按 5 个字段分组,其中集合有超过 500 万条记录