你能为AJAX调用添加优先级吗?

我正在创建一些使用ajax获取页面信息的插件。 现在有不同的插件可以执行不同的function。

所有插件都需要作为独立使用,但我还想添加它们可以很好地协同工作的function。

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

现在我的问题。 正如我所说,不同的插件获得了网站的不同部分。 例如,post计数,用户推文,用户统计,发表评论。

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

任何人都知道一个很好的解决方案,我可以通过spicify来获得评论,之后是统计数据等等。

我选择的JS框架是jQuery。

一种通用方法是为挂起的AJAX调用实现优先级队列。 每个插件都会将其调用放在队列中,并在调用时具有相关的优先级,并且AJAX队列处理器将按优先级顺序通过队列。

这是一个jQuery优先级队列插件的示例:

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

此外,这里已经为AJAX请求实现了一个:

对ajax请求进行排序

2018回答

仍然无法在XMLHttpRequestwindow.fetch调用上设置显式优先级,但有一个由Google驱动的新API提议称为“优先提示”。

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

截至目前,任何浏览器都不支持它; Chrome 70已经在旗帜后面发布了一个实验性实施。

减少非关键Fetch API请求的网络争用

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

对文章内容提出关键Fetch API请求的新闻网站最终可能会对不太重要的资源(如相关内容)的请求进行竞争。

  

通过在第二个Fetch请求上使用重要性属性,我们可以提示该请求的优先级较低,从而降低了它与文章内容的获取请求竞争的可能性。 我们还可以明确说明第一个请求的优先级很高,以便获取请求尚未具有高优先级的浏览器知道它对页面很重要。