http0.9
- 请求
GET /page.html
- 响应
<HTML>
网页的内容
</HTML>
http1.0
-
请求
-
响应
-
连接方式 = 短连接
一个请求一次tcp连接,每一次的通讯都需要建立并断开连接
http1.1
- 连接复用 = 长连接
多个请求用一个连接,但要保证请求顺序和阻塞的约束
http2
- 连接多路复用
移除了 HTTP/1.x 中顺序和阻塞的约束;
原理:每个请求附加一个streamID,服务端返回的响应里也加上对应请求的StreamID,就能区分确定哪个响应对应哪个请求
http3(草案)
弃用 TCP 协议,改为使用 UDP 协议和 QUIC 协议实现。
https
HTTP 协议在设计之初就没有充分考虑安全性的问题 【一个网络内谁都能 截取查看篡改】
采取嵌套新一层安全套接字层(Secure Socket Layer,SSL)来解决网络传输的安全性问题。