gpt4 book ai didi

jquery - 如何让jQuery连续请求同一个HTTP GET请求

转载 作者:行者123 更新时间:2023-12-01 06:31:11 25 4
gpt4 key购买 nike

我正在实现一个使用 $.getJSON 使用 jQuery 读取系统状态的软件。

这个想法是我在浏览器中显示实时数据并希望尽可能频繁地更新数据。服务器也在本地主机上运行,​​所以理论上我应该能够获得非常低的延迟(至少 < 50 毫秒,甚至小于 20)。

但问题是:如何使用 jQuery 实现 getJSON,以便在先前的请求完成后立即自动重新发送 HTTP GET 请求?

在我当前的实现中,我定义了一个更新函数:

function updateSimulation() {       
$.getJSON('/simulation/', function(data) {
// ..parse data here
});
}

并每 50 毫秒添加一次回调:

document.simulationIntervalId = setInterval( "updateSimulation()", 50 );

问题在于,如果一个请求花费的时间超过 50 毫秒,那么多个请求将异步等待结果,这意味着如果一个请求花费更长的时间,旧的数据可能会被新的数据替换,这是不可取的。

所以基本上这意味着可以考虑以下两种解决方案之一:1)当响应到达时,所有待处理的请求都可以被终止(不是最佳),2)仅在前一个请求返回后才发送新请求(也许是最佳解决方案)。

但一如既往,我们非常感谢所有评论和回答!

最佳答案

为什么不在 success 函数($.getJSON 的第二个参数)上调用 updateSimulation?

它将在前一个请求完成后执行该请求。

关于jquery - 如何让jQuery连续请求同一个HTTP GET请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4509503/

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