jQuery AJAX队列优先级

时间:2012-01-30 16:24:10

标签: jquery ajax

我有一个“补充”数据的大表,它是在页面加载时从大量的ajax请求中填充的。这些请求可能需要1分钟才能完成。在加载此数据时,用户可以在调用其他ajax请求的页面上执行操作。我遇到的问题是,在处理队列中的所有其他ajax请求之前,调用其他ajax请求的用户操作无法完成。这是因为正在使用所有相同域浏览器连接和jQuery ajax队列。

不幸的是,更改子域不是一种选择,也不是设置同步队列以便不使用所有相同的域连接。

我想要的是“优先考虑”请求,首先放置用户请求的选项。

使用jQuery的ajax队列有没有一种简单的方法来实现这个目的?

编辑:

如果没有办法管理请求队列(因为它开始出现),可以使用$ .ajax函数回调beforeSend来“推迟”排队的请求吗?

1 个答案:

答案 0 :(得分:2)

分派请求后,由服务器来处理它。由于它是异步的,因此您无法控制何时接收响应以及响应的顺序。服务器甚至没有真正“意识到”其他请求正在等待同一个会话......你可能会改变这一点,但是需要对Web服务器如何管理请求进行相当多的工作。

您唯一可以做的就是阻止用户进行交互,直到所有数据都已加载。