Ajax_HTTP请求以及响应

什么是HTTP请求?

就是从用户的浏览器端向服务器端发送请求

一个HTTP请求一般由四个部分组成

1.HTTP请求的方法或者动作,比如GET或者POST请求

2.请求的URL,也就是请求的地址

3.请求头,包含一些客户端环境信息,身法验证信息等等

4.请求体,也就是请求正文,正文中可以包含客户提交的查询字符串信息,表单信息等等

GET请求方式多用与信息的获取也就是查询数据,因为其是可见的,是通过url来传递数据的,所以由字数2000字符的限制

POST请求较为安全,是向服务器发送信息,就是从表单发送一些数据或者修改删除数据,同时发送信息也是没有限制的

HTTP响应一般由三个部分组成

1.一个数字文字组成的状态码,用来显示请求是成功还是失败

2.响应头,包含一些服务器类型,日期时间,内容类型,长度等等。

3.响应体,就是响应的正文内容

一个完整的HTTP请求过程应该由七个步骤

1.建立TCP连接

2.Web浏览器向Web服务器发送请求命令

3.Web浏览器发送请求头信息

4.Web服务器应答(响应)

5.Web服务器发送应答头信息

6.Web服务器向浏览器发送数据

7.Web服务器关闭TCP连接

 通过XHR对象发送一个HTTP请求

 open(method,url,async)

 open (请求方式get/post请求地址 异步/同步

 调用open方法就可以调用HTTP请求
 send(string)

 string(参数)

 get请求可以不填写,post方法需要填写参数

 通过send方法把请求发送到服务器

 创建XHR对象,然后调用其方法

request.open("GET","newPHP.php",true)

request.send()

request.open("POST","newPHP.php",true)

//设置HTTP头信息,告诉Web服务器,要发送一个表单信息

request.setRequestHeader("Content-Type","application/x-www-form-urlencoded")

request.send("name=陈弈迅&sex=男");

 
XHR获取服务器响应

通过XHR内的方法来获取

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

responseXML:获得XML形式的数据

//通过Json的方式则更为简单,Json下次再写

status和 statusText:以数字和文本的形式返回HTTP状态码

getAllResponseHeader():获取所有响应的报头

getResponseHeader():查询响应中某个字段的值

readyState:在响应返回成功的时候得到通知

属性 = 0:请求未初始化,open还未被调用

     1:服务器连接已经建立,open已经被调用

     2:请求已经接收(已经接收到头信息)

     3:请求处理中(接收到响应主题)

     4:请求已经完成,响应已经完成

通过onreadystatechane监听事件,来确认服务器响应是否完成

 
 
 
 
原文地址:https://www.cnblogs.com/WhiteM/p/6771188.html