微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax – Long Poll和IE的XDomainRequest对象

我正在尝试实现一个使用长轮询的聊天应用程序来从远程(跨域)服务器获取消息.

有没有办法用XDomainRequest做到这一点?似乎我的连接总是在随机的秒/毫秒(通常约1-3秒)后终止,而不是等待服务器响应.

IE开发人员告诉我,请求已被“中止”,没有收到数据.

XDomainRequest是不适合长时间轮询还是我在这里遗漏了什么?

解决方法

有这个问题,作为竞争条件,使用jQuery iecors库.尽管fiddler显示了200响应,IE网络控制台仍将请求显示为“中止”.

经过几轮顽固的谷歌搜索,我遇到了这个链接,建议填写所有的回调处理程序.我怀疑onProgress只被调用,并且失败,当请求被一个沉重的页面减慢时,导致我的种族行为.

IE9 XDomainRequest issued requests may abort if all event handlers not specified

对于jquery.ieco​​rs.js,除了一些变量名称拼写错误外,它还缺少onprogress处理程序.添加此行似乎可以解决它.

xdr.onprogress = function () {};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐