如何将当前的ajax请求重新分配给不同的请求? - jQuery / JS

时间:2012-02-08 00:11:12

标签: javascript jquery ajax

抱歉,我不知道如何更好地提出这个问题。基本上,我想要的是,如果在第一个完成之前触发了两个类似的ajax调用,而不是发送第二个,只需等待第一个完成并使用该结果。

作为一个例子,您可以想到一个请求Facebook新闻源的应用程序。

  1. 用户从主屏幕转到新闻Feed页面
  2. ajax开始从Facebook获取新闻Feed内容
  3. 用户单击后退按钮,在ajax呼叫完成之前将其带回主屏幕
  4. 用户再次点击新闻Feed
  5. ajax再次开火获取新闻
  6. 同时第一个请求返回,但不再使用,因为应用程序正在侦听第二个请求,这几乎是相同的
  7. 我正在保存新闻Feed内容,以便下次用户访问该页面时可以显示该内容,同时发送ajax调用以更新内容。但在上述情况下,第二次用户访问该页面时,尚未保存这些值,因此在第二次请求返回之前无需显示任何内容。

    假设它是一个单页应用程序,所以我们不会失去状态。

    我知道这需要大量的思考。有任何想法吗?至少在理论上?

2 个答案:

答案 0 :(得分:0)

页面加载时设置全局变量= 0。触发请求时 - 如果变量!= 1 - 触发请求。一旦检索到请求并输出结果;将其设置为0。

答案 1 :(得分:0)

假设我们没有丢失状态存储ajax调用的结果,并且当再次加载新闻源时,在再次发出请求之前检查结果是否已经存在。