AJAX--XMLHttpRequest用法介绍
前言最近小编在学习有关AJAX方面的知识,以前小小的接触过AJAX,这次再一次的学习AJAX,体会到了它的强大,由于小编也是初学,所以此篇博客只是一个对AJAX的一个简单的介绍,有关AJAX更深层次的理解,小编还会继续学习的。 叙述一、是什么AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。AJAX不是新的编程语言,而是一种使用现有标准的新方法。它是将现在广为流行的几种技术的结合,它支持多浏览器的实现异步通信,和无刷新页面或者局部刷新页面。 AJAX是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,AJAX可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 二、怎么用
在传统方式下,客户端将请求数据直接发送到服务器端,服务器端将页面地址返回,其实就是返回的整个页面。 在AJAX方式下,客户端将请求的数据通过一个AJAX引擎传送到服务器端,从服务器端返回的是数据,在这个传输过程中页面没有进行刷新,只是数据的传递。这就实现了页面的无刷新操作,拥有更好的用户体验度,同时提高了客户端和服务器端的交互效率。 三、核心--XMLHttpRequest对象在Ajax应用程序中,XmlHttpRequest对象负责将用户信息以异步通信地发送到服务器端,并接收服务器返回的响应信息和数据。 XMLHttpRequest可以提供不重新加载页面的情况下更新网页,在页面加载后再客户端向服务器请求数据,在页面加载后在服务器端接收数据,在后台向客户端发送数据。 XMLHttpRequest和Javascript Javascript本身并未具备向服务器发送请求的能力,要么使用window.open()方法重新打开一个页面向服务器提交请求,要么使用XMLHttpRequest对象发送请求。不同的是,前者是普通的即同步交互模式,而后者是异步交互方式。 XMLHttpRequest提供了一系列的属性和方法,来向服务器发送异步的http请求;在服务器处理用户请求的过程中,XMLHttpRequest通过属性的状态值来实时反映http请求所处的状态,并根据这些状态指示Javascript做相应的处理;当服务器顺利完成响应用户行为的动作、并将响应数据返回时,XMLHttpRequest提供的response系列方法,可以将这些响应数据以文本、XML Document对象、Ado Stream对象或者unsigned byte数组的方式组装起来,提供给Javascript处理。 四、使用XMLHttpRequest对象XMLHttpRequest方法: 1、Open(string method,string url,boolean asynch,String username,string password) XMLHttpRequest属性: 1、readyState 使用XMLHttpRequest的五步: 第一步:创建XMLHttpRequest对象 代码展示: 1、创建XMLHttpRequest对象
//实例化XMLHttpRequest对象
function createXMLHttpRequest(){
if(window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}else if(window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
二、注册回调方法
指定当服务器返回信息时客户端的处理方式。只需将相应的处理函数名称赋给XMLHttpRequest对象的onreadystatechange属性即可。
xmlHttp.onreadystatechange = callBack;
三、设置和服务器交互的相应参数
xmlhttp.open("GET","ajax?name=" +userName,true);
四、设置向服务器端发送的数据,启动和服务器端的交互xmlhttp.send(null);
五、判断和服务器端的交互是否完成,还要判断服务器端是否正确返回了数据
function callback(){
if(xmlhttp.readState==4){
//表示服务器的相应代码是200;正确返回了数据
if(xmlhttp.status==200){
//纯文本数据的接受方法
var message=xmlhttp.responseText;
//使用的前提是,服务器端需要设置content-type为text/xml
//var domXml=xmlhttp.responseXML;
//其它代码
}
}
}
小结
AJAX使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担。
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |