AJAX描述了确保Web应用在Web服务器请求新数据的情况下也能(几乎)实时反应的一种方法。具体地说,AJAX只是一些建立已久的技术的相互作用,从HTML、XHTML和HTTP,到JavaScript、CSS甚至XML或者JSON。异步请求附加数据集成到网页的技术理论上在1998年左右就已经出现,只有2005年出现的AJAX这一术语以及流行词Web 2.0相对新颖。
实际上,AJAX在推出时是作为JavaScript对象模型的扩展。但是我相信,如果使用这种简单的市场战略,就无法取得像AJAX这种流行语一样的成功。不过,纯粹从概念考虑,可以这样描述AJAX。
为了支持这种异步通信,现代浏览器提供了一个内建接口,控制来自独立于浏览器“常规”数据请求运行的客户端编程语言(主要是JavaScript)HTTP事务。这个接口采用XMLHttpRequest对象的形式,作为JavaScript对象模型的一个扩展。这些XHR或者XMLHttpRequest对象直接面向HTTP的内部结构,形成每个AJAX请求的骨架。它们也以某种形式存在于带有“AJAX”头衔的所有框架和工具包中,当然,这也包括jQuery。jQuery提供了一些非常好用的方法,从jQuery 1.5开始,甚至对该对象本身进行了扩展。
为了在浏览器和Web服务器之间进行异步通信,XHR对象使用函数引用,允许注册回调函数,这些函数在每次事务状态变化时解释运行。
而且,可以使用XMLHttpRequest对象访问AJAX请求或者响应的所有HTTP头标字段。
除了普通文本之外,AJAX请求的数据主要是XML和JSON数据。
转载自:http://book.51cto.com/art/201404/435910.htm