一、定义
http是网络传输协议的一种,是客户端和服务器进行传输内容时,遵守的规则规范。
http是非常复杂的计算机程序,我们所学习的前端不需要去研究http协议的源代码。只需要研究http协议的主要内容和使用方法,以便理解Ajax技术的执行原理
二、主要内容
2.1 三次握手
2.1.1 三次握手的定义
http协议的一部分 通过 TCP/IP 协议完成的,在客户端和服务器正式创建链接之前执行的程序内容,为了确保客户端和服务器都能正常工作。
客户端需要确认:客户端可以正常 接收 发送 请求。服务器可以正常 接收 发送 请求。
服务器需要确认:服务器可以正常 接收 发送 请求,服务器可以正常 接收 发送 请求。
2.1.2 三次握手的过程
(1)客户端给服务器发送请求。
客户端可以确定:客户端可以正常发送请求。
服务器可以确定:客户端可以正常发送请求,服务器可以正常接收请求。
(2)服务器给客户端发送请求
服务器可以确认:服务器可以正常发送请求。
客户端可以确认:客户端可以正常接收请求。服务器可以正常发送请,可以正常接收请求。、
(3)客户端给服务器发送请求。
服务器可以确定:客户端可以正常接收请求。
2.2 四次挥手
2.2.1 四次挥手的定义
在客户端和服务器正式断开链接前执行的 http协议程序,通过TCP/IP 协议完成,为了确保客户端和服务器正常的断开连接。
2.2.2 四次挥手的步骤
(1)客户端向服务器发送请求:客户端 告诉 服务器 客户端要断开连接
(2)服务器向客户端发送请求:服务器 告诉 客户端 服务器知道客户端要断开连接,服务器 也准备关闭。
这时候如果 客户端 要终止 断开连接操作,客户端 会立即给服务器返回一个终止 断开连接的请求,如果 服务器 没有 接收到 客户端终止断开连接请求,服务器会继续执行 第三次挥手。
(3)服务器向客户端发送请求:服务器 告诉 客户端 服务器已经正式关闭,服务器 不会再 发送请求,但是 服务器 可以 继续 接收请求。
(4)客户端向服务器发送请求:客户端 告诉 服务器 客户端知道服务器已经关闭,客户端 也关闭,客户端 不再 接收请求,但是 客户端 可以 继续 发送请求。
最终状态
客户端 关闭了 不再 接收请求 但是 可以 发送请求
服务器 关闭了 不再 发送请求 但是 可以 接收请求
2.3 请求报文
2.4 相应报文
2.5 状态码
2.5.1 定义
所谓的http状态码 是 使用 数字 表示 http请求的状态
2.5.2 状态码及其含义
100 - 199 :客户端和服务器建立连接,等待下一步操作。
200 - 299 :请求结束,并请求成功。
300 - 399 :重定向请求。
400 - 499 :执行失败,原因是客户端。
500 - 599 :请求执行失败 错误原因是 服务器。