Ajax与Http协议

一、Ajax与http详解

       Ajax全名为Asynchronous javascript and xml  

       是指围绕(由js向服务器发起http请求),这个功能而开发的一整套完整做法

       处理网络请求的四个步骤:

                  1、创建Xhr对象

                  2、发出HTTP请求

                  3、接收服务器回传的数据

                  4、更新网页数据

二、Xhr对象的常用属性和方法

       1、readystatechange   页面的加载状态监听

             描述:本事件不需用户主动调用,会在页面加载状态发生改变时自动调用

             语法:.onreadystatechange=function(){......};

                       .addEventListener('readystatechange',function(){...},bool)

       2、readyState属性(值为4,证明服务器已经完整收到信息)

              描述:是一个只读属性,用一个整数和对应常量表示XMLHttpRequest

                        请求当前所处状态,一般在onreadystatechange事件的回调函数中,

                        通过判断readystate的值,进而执行不同状态对应的函数

       3、status属性(后端给前台返回数据)

             描述:表示本次请求所得到的HTTP状态码,是一个整数  也是只读属性

             值为200:正常   值为404:未发现网址   值为500:服务器崩溃

       4、statusText   请求失败

       5、responseText  请求成功

       6、open()方法   设置请求发送到哪里,不是真的发送

             语法:xhr.open('请求类型','url地址','是否异步')

       7、send 发送请求    

             语法:xhr.set();     post是formdata    get是null

三、xhr对象发送post请求

       post和get的差异在于多了一个表单数据

       在xhr对象中可以通过FormData进行创建

      formData创建的位置和时机,只要在send之前就可以

       语法: 

var formData =new FormData();

formData.append('key',value);      //value是字符串时加引号

四、xhr对象的兼容性问题

       描述:xhr对象的获取方式在IE和非IE需要不同方法

       标准:XMLHttpRequest();

       IE:ActiveXObject();

五、请求超时timeout与超时监听ontimeout

        timeout单位是毫秒,表示当请求发出后等待相应的时间

        ontimeout是超时后,自动执行的回调方法

猜你喜欢

转载自blog.csdn.net/qq_42129143/article/details/80258261