首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Office for Mac客户端上的TaskPane应用程序中长时间的HTTP调用失败

在Office for Mac客户端上的TaskPane应用程序中长时间的HTTP调用失败
EN

Stack Overflow用户
提问于 2016-09-21 20:56:36
回答 1查看 471关注 0票数 1

我们已经构建了一个Excel任务窗格外接程序,它与我们的服务器交互以从外部源获取数据。对于少数呼叫,服务器需要一分钟以上的时间才能响应。对于这样的调用,Excel add-in (在Mac Desktop Excel 2016中运行)不会收到任何响应(成功、失败或超时),即使服务器已经发送了响应。

注意:只有当外接程序在Mac Desktop Excel中运行时,才会发生这种情况。在其他系统和浏览器中,它工作得很好。

Office for Mac客户端是否具有较低的超时阈值?如果是这样,有没有办法提高它?有没有其他的解决方法呢?

EN

回答 1

Stack Overflow用户

发布于 2016-10-25 02:13:40

我们用来承载外接程序的WebKit控件不能为我们提供覆盖web请求的默认超时的方法。Mac上的默认超时时间为60秒。如果您需要一个超过60秒的请求,我已经验证了WebKit支持OSX10.11.5上的XMLHttpRequest的超时属性。此请求将不会在120秒内超时:

代码语言:javascript
复制
var xhr = new XMLHttpRequest();
var startDate = new Date();
xhr.open('GET', url, true);

xhr.timeout = 120000; // time in milliseconds

xhr.onload = function () {
  console.log((new Date() - startDate) + " milliseconds to return.");
};

xhr.ontimeout = function (e) {
  console.error("error");
};

xhr.send(null);

请注意,从mac OS Sierra 10.12.1开始,这将不起作用。在WebKit中似乎出现了倒退。这里打开了一个跟踪bug:https://bugs.webkit.org/show_bug.cgi?id=163814

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39617221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档