javeEE第五周

一、定义

       AndXML”(异步Javascript和XML),是指一种创建交互式网页应用的网页开发技术。AJAX = 异步JavaScript和XML(通用标记语言的子集),是一种用于创建快速动态网页,在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

       划重点:(1)AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。

                     (2)AJAX 不是新的编程语言,而是一种使用现有标准的新方法。

                     (3)AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。

二、工作原理

       

       AJAX是基于现有的Internet标准,并且联合使用:XMLHttpRequest 对象 (异步的与服务器交换数据)、JavaScript/DOM (信息显示/交互)、CSS (给数据定义样式)、XML (作为转换数据的格式)。特别注意的是AJAX应用程序与浏览器和平台无关的。

三、应用实例    

       源代码如下:

              

扫描二维码关注公众号,回复: 49501 查看本文章

        分析:该应用程序包含一个 div 和一个按钮。div 部分用于显示来自服务器的信息。当按钮被点击时,它负责调用名为 loadXMLDoc() 的函数。

四、创建 XMLHttpRequest 对象

       XMLHttpRequest 是 AJAX 的基础,用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

       创建 XMLHttpRequest 对象的语法为:

                     variable=new XMLHttpRequest();

       老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:

                     variable=new ActiveXObject("Microsoft.XMLHTTP");

       为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持 XMLHttpRequest 对象。如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject。

五、 向服务器发送请求请求

        XMLHttpRequest 对象用于和服务器交换数据,如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:

                          xmlhttp.open("GET","ajax_info.txt",true);
                          xmlhttp.send();

       

六、服务器响应

       如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。

       

       如果来自服务器的响应并非 XML,使用 responseText 属性,该属性返回字符串形式的响应。

       如果来自服务器的响应是 XML,而且需要作为 XML 对象进行解析,使用 responseXML 属性。

七、总结

       通过上面对Ajax的基本介绍以及查找相关资料不难发现,Ajax最大的优点是页面无刷新,在页面内与服务器通信,给用户的体验非常好。除此之外,它使用异步方式与服务器通信,具有更加迅速的响应能力;其“按需取数据”的原则也可以最大层度的减少冗余请求和响应对服务器造成的负担。以上是Ajax很显著的优点,但其所带来的缺陷也是不容忽视的,Ajax对back按钮的舍弃使它没法和js进行很好的合作,这是其所带来的比较严中的问题;此外,在网络安全问题日益突出的信息化时代,新技术产生的同时也给IT企业带来了新的安全威胁,ajax技术就如同对企业数据建立了一个直接通道,从而使得ajax难以避免的出现一些安全弱点,诸如跨站点脚步攻击、SQL注入攻击等。因此,Ajax的发展机遇与挑战同在。

       参照与文章:http://www.runoob.com/ajax/ajax-intro.html

猜你喜欢

转载自www.cnblogs.com/csdns/p/8919826.html
今日推荐