gpt4 book ai didi

jquery - 同时 ajax 调用会导致随机错误

转载 作者:行者123 更新时间:2023-12-01 05:03:08 25 4
gpt4 key购买 nike

我有以下内容:

myfunc = function(url, callback, etc...) {
$.ajax({
type: 'GET',
url: url,
etc.});
}

function changeDivThis(data) {
$('#this').html(data);
}

function changeDivThat(data) {
$('#that').html(data);
}

我连续调用ajax get函数两次:

myfunc('/getData?mode=THIS', changeDivThis, etc...);
myfunc('/getData?mode=THAT', changeDivThat, etc...);

结果是,在相当一部分时间(例如 20% 的时间)中,id='this' 的 div 将填充调用 THAT 返回的数据。当我查看应用服务器日志时,我看到了一些意想不到的东西,比如只有一个请求。

当我在 Firebug 中运行时,该错误从未发生,一切都很好。我注意到 Firebug 大大减慢了浏览器的运行速度,所以我假设这是原因的线索,与并发性有关,例如在某些情况下,第二个调用首先从服务器返回,浏览器认为这是对第一个调用的响应。对吗?

因此,根据我对 AJAX 的有限经验,我认为它支持向服务器发出多个并发请求,然后按照响应返回的顺序对响应进行排序。这个问题让我相信 AJAX(或我的 Firefox = 3.6.24/jQuery = 1.4.4 版本)会将对同一 url 的两个请求视为相同,即使它们都有不同的参数。

我在 Google 上看到了这个排名靠前的页面:http://blogger.forgottenskies.com/?p=173这让我相信我并不是唯一遇到这个问题的人。

感谢您提供任何见解。

最佳答案

尝试将 cache: false 添加到传递给 $.ajax() 调用的选项中。我以为它只影响 IE,但是...

在此处查看缓存选项:http://api.jquery.com/jQuery.ajax/

关于jquery - 同时 ajax 调用会导致随机错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8219082/

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