1、什么是HTTP协议?
1)是基于请求与响应的应用层协议,底层协议TCP保证了数据可靠传输
2)通过url进行客户端与服务器之间的数据交互
3)是一种C/S(B/S)模式的协议,客户端向服务器发起请求,服务器处理请求并且返回响应
4)该协议是一种无状态的协议(不会记录用户的访问状态)
C/S模式
Client/Server;即客户端/服务器 交互性强 提供了更安全的存取模式
B/S模式
Browser/Server;即浏览器/服务器
系统开发、维护和升级的经济性
B/S模式具有很强的开放性
B/S模式的结构易于扩展
2、http协议过程:
1)创建TCP链接:客户端与服务器的三次握手:
客户端向服务器发出一个是否同意创建连接的信号、
服务器回应给客户是否空闲(即是否可以创建连接) 、
客户端再次向服务器发起创建连接的信息进而创建连接;
通过三次握手以后客户端和服务器就创建出了一数据通路,接下来就可以保证http协议包的可靠传输了
2)客户端向服务器发起http请求:通过url把参数(请求体)以及请求头传递给服务器,请求方式有,常用get和post请求头:请求头中包含了本次请求的相关的配置信息(比如数据格式、cookie等),决定了客户端和服务器进行数据交流的方式与格式
请求体:就是参数,客户端向服务器提交的内容
3)服务器处理请求,并且把处理结果响应给客户端
4)关闭连接:TCP的四次挥手
客户端告诉服务器(报文发送)没有数据发送了
服务器告诉客户端同意关闭请求
服务器请求关闭连接
客户端同意关闭连接,随之服务器关闭连接