gpt4 book ai didi

ajax - 使用 Axios 将某些 XHR 请求优先于其他请求

转载 作者:可可西里 更新时间:2023-11-01 17:04:43 48 4
gpt4 key购买 nike

我正在制作一个页面,该页面使用 Axios 发出几十个有点慢的 AJAX 请求,但没关系,因为我使用 Vue.js 只是显示传入的数据。页面的其余部分在 30-60 秒的过程中发生时,它很好并且 react 灵敏。

现在,当用户执行某些也会生成 PUT 或 POST 请求的其他操作时,通常请求不会运行,直到它到达“它的turn"由浏览器指示,这似乎使传出的 XHR 请求先到先得。因此,由于正在进行的数据获取请求,这个新操作被大大延迟。

有没有办法通过 Axios 或任何其他方法简单地将这十几个数据获取请求设置为“低优先级”,以便任何新的其他请求可以立即获得下一个可用的传出 HTTP 连接?

我想我可以编写一些函数来处理排队,然后将请求用勺子喂给 Axios,但我觉得应该有一种更简单的方法。有什么想法吗?

最佳答案

我必须实现一个自定义方案,在该方案中,我的 Javascript 代码使用一个数组(例如 const requestQueue = [] 和一个正在进行的数组)将我的 AJAX 请求喂给浏览器(通过 axios) promise ,const pendingRequestPromises = []。可能有几种不同的方法可以做到这一点;一种方法是在调用之前和每个请求的回调中更新每个数组;然后当 pendingRequestPromises.length 等于或大于阈值(比如 3)时,使用 await 调用下一个请求,而不是使用即发即弃的方法。这样,请求以 4 个为一组发出,其他代码可以在这些突发之间运行。

这似乎是图书馆的工作......也许我应该写它?让我知道你是否可以使用这样的东西。

关于ajax - 使用 Axios 将某些 XHR 请求优先于其他请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53266620/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com