首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >您可以为AJAX调用添加优先级吗

问您可以为AJAX调用添加优先级吗
EN

Stack Overflow用户
提问于 2011-11-15 03:11:30
回答 2查看 10K关注 0票数 12

我正在创建一些使用ajax来获取页面信息的插件。现在有不同的插件可以实现不同的功能。

所有的插件都需要作为独立使用,但我也想添加的功能,他们可以很好地在一起工作。

所有不同的插件都有自己的JavaScript文件和函数。这在HTTP请求方面没有问题,因为当网站耗尽时,大多数人都有将所有文件合并为一个文件的插件。

--

现在是我的问题了。正如我所说的,不同的插件会得到网站的不同部分。例如,帖子计数,用户推文,用户统计,帖子评论。

现在,我可以指定从网站调用此信息的优先级。我认为不能将它们全部合并到一个ajax调用中,因为它们都是单独的工作组件。

谁知道一个很好的解决方案,我怎么才能先得到评论,之后的统计数据,等等。

我选择的JS框架是jQuery。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-15 03:19:26

一种通用的方法是为挂起的AJAX调用实现一个优先级队列。每个插件都会将它们的调用放在队列中,并为调用分配一个相关的优先级,而AJAX队列处理器将按照优先级的顺序处理队列。

下面是一个jQuery优先级队列插件的例子:

http://benalman.com/code/projects/jquery-message-queuing/docs/files/jquery-ba-jqmq-js.html

另外,这里有一个已经为AJAX请求实现的:

Sequencing ajax requests

票数 6
EN

Stack Overflow用户

发布于 2018-10-11 23:09:59

2020年更新

2018答案

在XMLHttpRequest和window.fetch调用上设置明确的优先级仍然是不可能的,但是有一个由谷歌推动的新的API提议叫做“优先级提示”。

https://wicg.github.io/priority-hints/#examples

到目前为止,任何浏览器都不支持它;Chrome 70 has shipped an experimental implementation behind the flag.

减少来自非关键获取应用编程接口请求的网络争用

可以使用优先级提示来降低非关键Fetch API请求的优先级,以避免它们与更重要的请求竞争。

新闻站点对文章内容发出关键的Fetch API请求,最终可能会与对不太重要的资源(如相关内容)的请求发生冲突。通过使用第二个Fetch请求的重要性属性,我们可以提示该请求的优先级较低,从而减少了它与文章内容的Fetch请求竞争的机会。我们还可以显式地声明第一个请求的优先级很高,这样获取请求还没有高优先级的浏览器就会知道它对页面很重要。

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

https://stackoverflow.com/questions/8126777

复制
相关文章

相似问题

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