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

同步XMLHttpRequest Strophe.js

如何解决同步XMLHttpRequest Strophe.js

我正在使用Strophe.js(基于JS的Xmpp库)。问题是我需要建立同步连接,以便我收到的响应是正确的顺序。但是,当我使用同步连接时,页面排序变得卡住了。即使右键单击以打开控制台也需要几分钟。

我在页面上收到此警告。

[Deprecation]主线程上的同步XMLHttpRequest是 不推荐使用,因为它对最终用户的不利影响 经验。如需更多帮助,请检查https://xhr.spec.whatwg.org/

请帮助!

解决方法

警告只是告诉您,出于某种原因,使用异步调用是非常可取的。

同步调用将阻塞您的其余代码,直到收到响应为止。不知何故,您的同步呼叫返回需要很长时间。

不查看代码就很难说出原因,但是您可以尝试通过在浏览器中键入其URL来获取尝试获取的资源,并查看获取响应需要多长时间,或者完全没有反应,如果您发现任何错误。

如果无法检索资源或资源使用缓慢,您就会知道问题出在哪里以及在哪里解决。

有一些方法可以以正确的顺序获取XMLHttpRequest结果:

  • 使用同步呼叫并尝试确保服务器响应足够快;
  • 使用异步调用并在成功返回上一个请求后开始下一个调用(因此,在上一个请求的回调中启动下一个请求);
  • 使用异步调用,存储请求号,将响应存储在临时数组中,直到所有调用返回,并对它们进行排序;
  • 我不知道一些时髦而现代的方式,但Google可能知道。

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