http: 超文本传输协议(应用层协议),默认端口号为80,客户端是动态的,浏览器会自动默认为80
http是一个无状态的协议,每次请求之间没有任何联系。
http协议的结构:
请求:从浏览器到服务器
请求行:
请求方式(get/post) 请求地址(url) 协议的版本(http1.1)
请求头:
键:值
键:值
键:值
…
请求实体
post请求的参数
响应:从服务器到浏览器
响应行:
协议版本 状态码 状态描述
响应头:
键:值
键:值
键:值
…
响应实体:
字符串数据,或者流信息
请求流程2种分为request和response,但是他们的流程都是相同的,一个请求一个接收
流程为:状态行、消息报头、空行和响应正文
请求响应步骤:
客户端连接到Web服务器->发送Http请求->服务器接受请求并返回HTTP响应->释放连接TCP连接->客户端浏览器解析HTML内
请求方法8种:get、post、put、delete、options、trace、connect、head
HTTP/1.1协议中共定义了八种方法(有时也叫“动作”),来表明Request-URL指定的资源不同 的操作方式
HTTP1.0定义了三种请求方法: get, post和 head方法。
HTTP1.1新增了五种请求方法:options, put, delete, trace和 connect方法
HTTP1.0/1.1/2.0区别
HTTP1.0是没有host域的,HTTP1.1才支持这个参数。
在开放互联网上HTTP 2.0将只用于https://网址,而 http://网址将继续使用HTTP/1,目的是在开放互联网上增加使用加密技术,以提供强有力的保护去遏制主动攻击。DANE RFC6698允许域名管理员不通过第三方CA自行发行证书。
HTTP2.0使用多路复用技术(Multiplexing),多路复用允许同时通过单一的 HTTP/2 连接发起多重的请求-响应消息。HTTP/2更有效的使用TCP连接,得到性能上的提升。
HTTP/2新增首部压缩(Header Compression):采用HPACK算法
HTTP/2新增服务端推送(Header Compression)
参考地址:https://www.cnblogs.com/weibanggang/p/9454581.html