HTTP 基础
HTTP 是一个拓展性非常好的协议。它依赖于资源或统一资源定位符(URI)的概念、一个简单的消息结构和一个客户端——服务器结构的通信流。在这些基础概念之上,近年来已经出现了许多拓展,以增加新的 HTTP 方法或首部的方式为 HTTP 协议增加了新的功能和语义。
文章
- HTTP 概览
-
描述了什么是 HTTP,它在 Web 架构中的角色,以及它在协议栈中的位置。
- HTTP 演变
-
HTTP 是在 20 世纪 90 年代早期出现的,并且已经被扩充了多次。本文会回顾 HTTP 的发展史,描述 HTTP/0.9、HTTP/1.0、HTTP/1.1 和最新的 HTTP/2,以及这些年来出现的一些新特性。
- URI
-
URI 用于定位 Web 上的资源,并且可以作为 HTTP 请求的目标。
- MIME 类型
-
从 HTTP/1.0 开始,HTTP 协议允许传输不同类型的内容。本文解释了如何通过使用
Content-Type
首部和 MIME 标准实现这一过程的。 - HTTP 会话流程
-
本文描述了一个经典的 HTTP 会话:当你在浏览器中点击一个链接或在网页中加载一张图片时,背后到底发生了什么。
- HTTP 消息
-
在请求和响应中传输的 HTTP 消息具有非常清晰的结构;本文介绍了消息的结构、设计目的以及其可能性。
- HTTP/2 中的帧及消息结构
-
HTTP/2 用二进制帧来压缩和表示 HTTP/1.x 中的消息。本文解释了 HTTP/2 中的帧结构,其设计目的以及编码方式。
- HTTP/1.x 的连接管理
-
HTTP/1.1 是首个支持持久化连接和管道化的 HTTP 版本。本文介绍了这两个概念。
- HTTP/2 的连接管理
-
HTTP/2 完全改变了连接创建和维护的方式:本文介绍了 HTTP 帧是怎样支持多路复用并解决之前的 HTTP 版本中存在的队头阻塞问题的。
- 内容协商
-
HTTP 引入了一组以
Accept
开头的首部,作为浏览器用来声明它们期望得到的格式,语言或编码的方法。本文讲述了这一过程是怎样实现的,以及服务器是怎样处理并选择恰当的响应的。