ajax工作原理

一、向服务器发送请求

  1、如何发送请求:使用XMLHttpRequest 对象的open()和send()方法

    1)open(method,url,async)

       *  method:请求方式:GET或POST

       *  url:文件在服务器上的位置

       *  async:true(异步)或false(同步)

    2)send(string):仅用于POST请求

  2、请求的两种方式

  GET:从指定的资源请求数据

      *  查询字符串以?连接在URL地址后面,例如:/test/demo_form.asp?name1=value1&name2=value2

  POST:向指定的资源提交数据

      *查询字符串在http请求主体中发送

 

    

 

 

 

二、服务器响应数据

  1、如何接受服务器的响应信息?使用XMLHttpRequest 对象的responseText 或 responseXML 属性。

    *  responseText:获得字符串形式的响应数据。

    *  responseXML:获得 XML 形式的响应数据。

三、请求响应流程

  XMLHttpRequest 对象可以与服务器交互,因此可以在不刷新页面的情况下从URL中获取数据,从而达到局部刷新的目的。

  XMLHttpRequest 发送请求后,readyState 会不断的改变,它存储着XMLHttpRequest 的状态信息,对应着不同的状态。

  readyState 改变时会触发onreadystatechange 事件。

  **readyState :存储XMLHttpRequest对象的状态信息

    0:请求未初始化

    1:服务器连接已建立

    2:请求已接收

    3:请求已处理

    4:请求已完成,且响应已就绪

  **status:当服务器接收到请求后会返回一个包含http状态码的信息头来响应浏览器的请求。

    1XX:信息,服务器收到请求,需要请求者继续执行此操作

    2XX:成功。操作被成功接收并处理

    3XX:重定向。需要进一步的操作以完成

    4XX:客户端请求错误

    5XX:服务器错误。服务器在处理请求时出现错误。

 

  所以当 readyState 等于 4 且状态为 200 时,表示数据已成功处理并且响应已就绪

 

posted @ 2019-10-26 15:40  我就是要学习  阅读(136)  评论(0编辑  收藏  举报