2011-02-01 85 views
5

因为我并不是网络开发的新手,所以我觉得这些基本问题很尴尬。但我想仔细检查我的假设......AJAX呼叫是否阻止,它们的寿命是多少?

我在我的应用程序中构建独特图像视图的记录。当一个用户(而不是一个机器人)访问一个图像页面时,Ajax会调用一个收集会话信息的后端进程,比较是否存在重复并存储该访问。我有我所有的JavaScript引用,以及在HTML的底部,这个调用,只是</body>元素之前:

$.get(basepath + "image/1329/record/human", function(data){ 
console.log("Data Loaded: " + data); 
}); 

默认情况下,调用$。获得由异步的。然而,我想测试以下假设:

  • 这种方法确保对视图记录脚本的调用对于其余UI是否为非阻塞是否正确?
  • 无论用户是否导航到其他页面,后端脚本一旦完成调用就完成了是否正确?

回答

5

根据jQuery .get reference ...

[$获得()] 是简写的Ajax功能,这是equi价格为

$.ajax({ url: url, data: data, 
     success: success, dataType: dataType 
}); 

而$ .ajax是异步的(即,非阻塞),这就是Ajax中的A意味着什么。

此外,后端服务器代码是在服务器接收到请求的时候启动的,然后独立于停留在页面上的客户端运行,除非您实施某种机制来停止正在运行的服务,我认为你没有。

上帝保佑!

+1

感谢您的确认,这让我感到高兴,因为它完全隔离了从用户录制视图的任何可能的性能损失。 – Ferdy 2011-02-01 19:57:38

4

jQuery.get请求你让是异步的,不会持续阻止DOM或其​​他JavaScript。 get函数是一个使用jQuery.ajax的简写方法。

第二个问题我没有确切的答案 - 我期望它可能更多地取决于后端代码的结构以及是否告知会话/请求已终止。

API: