笔记2 | 青训营

123 阅读1分钟

HTTP 2.0 笔记

1. 简介

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的协议,它是Web通信的基础。HTTP 2.0 是 HTTP 协议的下一代版本,旨在提供更高的性能和效率。

2. 主要特性

  • 二进制协议:HTTP 2.0 使用二进制编码来传输数据,相比于之前的版本,可以更快地解析和处理数据。
  • 多路复用:HTTP 2.0 允许同时在一个 TCP 连接上发送多个请求和响应,避免了建立多个连接的开销,提高了性能。
  • 头部压缩:HTTP 2.0 使用 HPACK 算法对头部进行压缩,减小了数据传输的大小,提高了效率。
  • 服务器推送:HTTP 2.0 允许服务器在客户端请求之前主动推送资源,减少了客户端请求的延迟。
  • 流控制:HTTP 2.0 支持流级别的流控制,可以更好地控制数据的传输速率,防止过载和拥塞。

3. 使用示例

请求示例

GET /index.html HTTP/2.0
Host: example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36
Accept: text/html,application/xhtml+xml

响应示例

HTTP/2.0 200 OK
Content-Type: text/html
Content-Length: 1024
Server: Apache/2.4.41 (Unix)
Date: Sun, 14 Mar 2021 12:00:00 GMT
<!DOCTYPE html>
<html>
<head>
  <title>Example</title>
</head>
<body>
  <h1>Hello, World!</h1>
</body>
</html>

4. 兼容性

HTTP 2.0 可以与之前的 HTTP 版本兼容,并且大多数现代浏览器和服务器都支持 HTTP 2.0。