什么是 HTTP?

HTTP(超文本传输协议)是万维网的基础协议,定义了消息如何在 Web 浏览器和服务器之间格式化和传输。它是一种无状态的应用层协议,能够检索链接的资源。

快速了解

全称超文本传输协议
创建时间1991 年由 Tim Berners-Lee 创建
规范文档官方规范

HTTP 工作原理

HTTP 由 Tim Berners-Lee 从 1989 年开始在 CERN 开发。它作为请求-响应协议运行:客户端向服务器发送请求,服务器响应请求的资源。HTTP/1.1(1997)添加了持久连接和分块传输。HTTP/2(2015)引入了多路复用和头部压缩。HTTP/3(2022)使用 QUIC 协议以提高性能。HTTP 方法包括 GET、POST、PUT、DELETE、PATCH、HEAD 和 OPTIONS。该协议是基于文本的,人类可读,便于调试。

主要特点

  • 请求-响应协议模型
  • 无状态 - 请求之间没有连接状态
  • 基于文本,人类可读
  • 支持多种方法(GET、POST、PUT、DELETE)
  • 头部携带请求/响应的元数据
  • 版本:HTTP/1.1、HTTP/2、HTTP/3

常见用途

  1. 网页检索
  2. API 通信
  3. 文件下载和上传
  4. 表单提交
  5. 流媒体传输

示例

HTTP 请求:
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html
Accept-Language: zh-CN
Connection: keep-alive

HTTP 响应:
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Content-Length: 1234
Date: Mon, 01 Jan 2024 00:00:00 GMT
Server: Apache/2.4

<!DOCTYPE html>
<html>...</html>

常用 HTTP 方法:
GET     - 获取资源
POST    - 提交数据
PUT     - 替换资源
PATCH   - 部分更新
DELETE  - 删除资源
HEAD    - 仅获取头部
OPTIONS - 获取支持的方法

QubitTool 相关工具

相关概念