axaj

2017-10-18 18:55:24来源:CSDN作者:my_csdn_lsq人点击

分享
AJAX(Asynchronous Javascript And XML)


1.什么是AJAX:
     是异步的javaScript And Xml,与服务器进行异步的数据交互,传输数据可以为XML,也可以为
     文本文件,或者JSON格式的文件。
     
2.最大的特点
     不用刷新整个页面,就可以使页面实现局部刷新,通过JavaScript来控制页面的元素。
     与服务器进行交互。
     
3.同步和异步
     同步交互:当客户端向服务端发送请求之后,需要等待服务器响应结束之后,才可以发送第二
               个请求。
     异步交互:当客户端向服务器发送请求之后,不需要等待服务器响应结束之后,就可以发送第二
               个请求。
               
4.ajax优点和缺点
     优点:
      AJAX使用Javascript技术向服务器发送异步请求;
      AJAX无须刷新整个页面;
      因为服务器响应内容不再是整个页面,而是页面中的局部,所以AJAX性能高;
     缺点:
      AJAX并不适合所有场景,很多时候还是要使用同步交互;
      AJAX虽然提高了用户体验,但无形中向服务器发送的请求次数增多了,导致服务器压力增大;
      因为AJAX是在浏览器中使用Javascript技术完成的,所以还需要处理浏览器兼容性问题;
      
5.ajax实现步骤(四步):
      1.得到XMLHttpRequest,不同的浏览器创建的方式是不一样的:
        大多数浏览器:var xmlHttp = new XMLHttpRequest();
        IE6:  var xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        IE5.5(更早):  var xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        
      2.打开连接: xmlHttp.open("","",bool);
        打开与服务器的连接,里面有三个参数:
        1.提交方式:GET 或者 POST;
        2.服务器URL: 请求的服务器位置,GET在URL后面加个?,?号后面都是参数
        3.为布尔类型:true/false ,如果为true代表异步请求。
        例如:xmlHttp.open("GET","AjaxDemo1?userName=lipeng",true);//true代表异步请求
        
      3.发送请求:xmlHttp.send(null):
        发送数据到服务器:
        参数:代表请求体里面的内容,如果是GET,由于GET没有请求体,所以给null,如果不给,
              可能造成部分浏览器出现错误。
              如果是POST:需要给定指定的参数:例如xmlHttp.send("userName=lipeng");
      
      4.监听从服务器传送过来的数据  0,1,2,3,4五种状态都可以监听到
        xmlHttp对象的五种状态:
            > 0状态:刚创建,还没有调用open()方法; 
            > 1状态:请求开始:调用了open()方法,但还没有调用send()方法
            > 2状态:调用完了send()方法了;
            > 3状态:服务器已经开始响应,但不表示响应结束了!
            > 4状态:服务器响应结束!(通常我们只关心这个状态!!!)
            通过xmlHttp.readyState 得到状态码
            
        服务器的响应码:
            200 ok 成功
            404 访问不到资源
            500 服务器出现错误
            通过xmlHttp.status 得到服务器响应码
            
         我们一般只关心服务器是否结束和响应码是否成功
         if(xmlHttp.readyState==4 && xmlHttp.status==200){}
         
         等到服务器传送过来的数据:
            得到文本文件:
                 xmlHttp.responseText;
            得到XML格式的文件:

                 xmlHttp.responseXML;


常用Jquery操作ajax请求,ajaxfileupload上传文件(http://blog.csdn.net/qiantujava/article/details/37934225)。





相关文章

    无相关信息

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台