首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >同时进行ajax调用会导致随机错误。

同时进行ajax调用会导致随机错误。
EN

Stack Overflow用户
提问于 2011-11-21 21:58:20
回答 1查看 1.2K关注 0票数 2

我有以下几点:

代码语言:javascript
运行
复制
myfunc = function(url, callback, etc...) {
  $.ajax({
    type: 'GET',
    url: url,
    etc.});
}

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

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

我连续两次调用ajax函数:

代码语言:javascript
运行
复制
myfunc('/getData?mode=THIS', changeDivThis, etc...);
myfunc('/getData?mode=THAT', changeDivThat, etc...);

结果是,一些重要的时间,比如20%的时间,id='this‘的div将被调用返回的数据填充。当我查看应用服务器日志时,我看到了一些意想不到的东西,比如只有一个请求。

当我在Firebug中运行时,这个bug永远不会发生,一切都很好。我注意到Firebug大大降低了浏览器操作的速度,所以我假设这是原因的线索,与并发有关,例如第二个调用首先从服务器返回,然后浏览器认为这是对第一个调用的响应。对,是这样?

因此,在我有限的AJAX经验中,我认为它支持在服务器上抛出几个并发请求,然后按照它们返回的任何顺序排序响应。这个问题使我相信AJAX (或者我的Firefox = 3.6.24/jQuery =1.4.4版本)将两个请求视为相同的url,尽管它们都有不同的参数。

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

谢谢你的见解。

EN

回答 1

Stack Overflow用户

发布于 2011-11-21 22:02:59

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

请参见此处的缓存选项:http://api.jquery.com/jQuery.ajax/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8219082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档