Ajax技术原理小结

ajax:Asynchronous Javascript and XML   异步Javascript 和XML。

是一种创建交互式网页应用的网页开发技术。

1.0 优势:

1.1 通过异步模式,提升了用户体验。

1.2 优化了浏览器与服务器之间的传输,减少了不必要的数据往返,减少了带宽占用。

1.3 Ajax引擎在客户端运行,承担了一部分本来由服务器承担的共组,从而减少了大用户量下的服务器负载。

2.0 工作原理

Ajax核心是Javascript对象XmlHttpRequest。该对象在 IE5中首次引用,它是一种支持异步请求的技术。XmlHttpRequest使您可以使用Javascript向服务器提出请求并处理响应,而不是阻塞用户,达到无刷新的效果。

由于浏览器之间存在差异,创建XmlHttpRequest对象的方式也有差异(主要是IE和其他浏览器之间的差异)。

  2.1 比较通用型的创建异步请求的方法:

function CreateXmlHttp() {
//非IE浏览器创建XmlHttpRequest对象的方法
if (window.XmlHttpRequest) {
        xmlhttp = new XmlHttpRequest();
    }
//IE浏览器创建XmlHttpRequest对象的方法
if (window.ActiveXObject) {
try {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
catch (e) {
    try {
                xmlhttp = new ActiveXObject("msxml2.XMLHTTP");
             }
    catch (ex)
            { }
        }
    }
} 

  2.2 XmlHttpRequest相关属性:

    onreadystatechange      每次状态改变所触发事件的事件处理程序。

    responseText               从服务器进程返回数据的字符串形式。

    responseXML                从服务器进程返回的DOM兼容的文档数据对象。

    status                         从服务器返回的数字代码,比如常见的404(未找到)和200(已就绪)

    status Text                  伴随状态码的字符串信息

    readyState                   对象状态值

      0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)

        1 (初始化) 对象已建立,尚未调用send方法

      2 (发送数据) send方法已调用,但是当前的状态及http头未知

      3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,

      4 (完成) 数据接收完毕,此时可以通过通过responseXml和responseText获取完整的回应数据

  2.3 简单的Demo示例:

function SendAsyncRequest() {
var data = document.getElementById("XXId").value;
    CreateXmlHttp();  //创建XmlHttpRequest对象
if (!xmlhttp) {         //判断对象是否创建成功
       alert("创建xmlhttp对象异常!");
    return false;
    }
    xmlhttp.open("POST", url, false);   //开始发送异步请求
    xmlhttp.onreadystatechange = function () {
  if (xmlhttp.readyState == 4 && xmlhttp.status == 200 ) {
            document.getElementById("XXShowId").innerHTML = xmlhttp.ResponseText;   //数据接收完毕
        }
    }
    xmlhttp.send();
}

3.0 缺点:

1.破坏了浏览器后退按钮的正常行为,动态更新页面后,无法回到前一个页面的状态。

2.使用Javascript作为Ajax的基础引擎,Javascript的兼容性并不是很好。(当然现在流行的Jquery等javascript类库大大改善了这些问题,对Ajax的调用也方便了很多,本文只是简述了Ajax的基本实现原理)。

时间: 2024-12-25 19:31:49

Ajax技术原理小结的相关文章

ajax 技术和原理分析

ajax所包含的技术 大家都知道ajax并非一种新的技术,而是几种原有技术的结合体.它由下列技术组合而成. 1.使用CSS和XHTML来表示. 2. 使用DOM模型来交互和动态显示. 3.使用XMLHttpRequest来和服务器进行异步通信. 4.使用javascript来绑定和调用. 在上面几中技术中,除了XmlHttpRequest对象以外,其它所有的技术都是基于web标准并且已经得到了广泛使用的,XMLHttpRequest虽然目前还没有被W3C所采纳,但是它已经是一个事实的标准,因为目

Ajax的技术原理

昨天问道ajax是.我回答到不就是jquery框架提供的一个异步通信方法么.当再问原理时我傻逼了.ajax技术其实我只在实习时用到了.感到很方便的东西它不需要每次更新都刷新页面.可以异步请求服务器.利用回调函数进行处理程序. 在jquery API文档中我们可以看到一个简单的demo $.ajax({ type: "POST", url: "some.php", data: "name=John&location=Boston", suc

Ajax实例讲解与技术原理

林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.AJAX 是一种用于创建快速动态网页的技术.通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新.这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新.解决传统的网页(不使用 AJAX)如果需要

(转)AJAX工作原理及其优缺点

1.什么是AJAX?AJAX全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术.它使用:使用XHTML+CSS来标准化呈现:使用XML和XSLT进行数据交换及相关操作:使用XMLHttpRequest对象与Web服务器进行异步数据通信: 使用Javascript操作Document Object Model进行动态显示及交互: 使用JavaScript绑定和处理所有数据. 2.与传统的we

ajax技术实现登录判断用户名是否重复以及利用xml实现二级下拉框联动

今天学了ajax技术,特地在此写下来作为复习. 一.什么是ajax? 客户端(特指PC浏览器)与服务器,可以在[不必刷新整个浏览器]的情况下,与服务器进行异步通讯的技术  即,AJAX是一个[局部刷新]的[异步]通讯技术, 说白了就是局部刷新. 二.ajax的原理如下图 附上ajax与服务器之间的几种状态,但 4是所有浏览器都支持的的 三.ajax包含的技术如下图 四.ajax开发步骤 步一:创建ajax对象,例如:ajax = createAjax(); 步二:开启异步对象:例如:ajax.o

Ajax工作原理

1.ajax技术的背景       不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行.而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlHttpRequest对象,并且微软之前已经开始在它的一些产品中应用ajax,比如说MSDN网站菜单中的一些应用.遗憾的是,不知道出于什么想法,当时微软

Ajax工作原理以及常用的Ajax框架

1,关于同步和异步 异步传输是面向字符的传输,它的单位是字符:而同步传输是面向比特的传输,它的单位是桢,它传输的时候要求接受方和发送方的时钟是保持一致的. ajax可以提升用户体验,它是利用异步请求方式的.打个比方,如果现在你家里所在的小区因 某种情况而面临停水,现在有关部门公布了两种方案,一是完全停水8个小时,在这8个小时内完全停水,8个小时后恢复正常.二是不完全停水10 个小时,在这10个小时内水没有完全断,只是流量比原来小了很多,在10个小时后恢复正常流量,那么,如果是你你会选择哪种方式呢

[转]AJAX工作原理及其优缺点

1.什么是AJAX?AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术.它使用:使用XHTML+CSS来标准化呈现:使用XML和XSLT进行数据交换及相关操作:使用XMLHttpRequest对象与Web服务器进行异步数据通信: 使用Javascript操作Document Object Model进行动态显示及交互: 使用JavaScript绑定和处理所有数据. 2.与传统的web应用比较

Ajax的原理和应用

Ajax的原理和应用 在这篇文章中,我将从10个方面来对AJAX技术进行系统的讲解. 1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行.而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlHttpRequest对象,并且微软之前已经开始在它的一些产品中应用ajax,