当前位置: 首页 > backend >正文

什么是HTTP

HTTP(HyperText Transfer Protocol)是万维网数据通信的基础协议,作为应用层协议具有以下关键特性:

客户端-服务器模型:基于请求/响应模式

无状态协议:默认不保留通信状态

可扩展性:通过首部字段扩展功能

明文传输(HTTPS 实现加密)

协议演进历程

版本发布时间核心改进典型应用场景
HTTP/0.91991仅支持 GET 方法早期简单文档传输
HTTP/1.01996引入 HEAD/POST 方法、状态码基础网页浏览
HTTP/1.11997持久连接、管道化、缓存控制现代 Web 应用基础
HTTP/22015二进制分帧、头部压缩、多路复用高性能网站/SPA
HTTP/32022QUIC 协议、0-RTT 连接移动端/高延迟环境

请求报文

GET /api/users HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0
Accept: application/json

(请求体)

 响应报文

HTTP/1.1 200 OK
Content-Type: application/json
Date: Wed, 21 Oct 2023 07:28:00 GMT{"data": [...]
}

请求方法矩阵

方法幂等性安全性典型应用场景
GET获取资源
POST创建资源/提交表单
PUT完整更新资源
PATCH部分更新资源
DELETE删除资源
HEAD获取响应头信息

状态码分类

状态码类别常见示例开发者处理建议
1xx信息响应100 Continue等待后续请求
2xx成功响应200 OK / 201 Created正常处理业务逻辑
3xx重定向301 Moved Permanently更新书签/处理跳转逻辑
4xx客户端错误400 Bad Request检查请求参数/权限配置
5xx服务端错误500 Internal Server Error排查服务端代码/日志

 

连接管理优化

策略HTTP/1.1HTTP/2
连接复用Keep-Alive多路复用
头部压缩HPACK 压缩
服务器推送不支持支持
请求优先级流优先级控制

 缓存策略设计

graph LR
    A[客户端请求] --> B{缓存有效?}
    B -->|是| C[返回304 Not Modified]
    B -->|否| D[返回200 + 新资源]

 
http://www.xdnf.cn/news/8447.html

相关文章:

  • FFTW图像处理入门
  • 支持电子病历四级的云HIS系统,云HIS系统源码,医院管理信息系统
  • 5月23日day34打卡
  • 日拱一卒【6】
  • IDEA 编程语言 MoonBit:为 AI 与大型系统而生,无缝调用 Python
  • 2025最好的Next.js面试题
  • 霍尼韦尔HMR2300-D00-485数字模块
  • LTSPICE仿真电路:(二十九)T型反馈比例器
  • TCP实现双向通信练习题
  • 网络的协议和标准
  • Gradle快速入门
  • 【普及+/提高】洛谷P2613 【模板】有理数取余——快读+快速幂
  • 用户获取规模提升45%,NetMarvel助力金融APP精准推广!
  • 基于民锋价格通道模型的波动分析策略研究
  • Docker安装Nginx(最完整的安装方式)
  • 摩尔线程S4000国产信创计算卡性能实战——Pytorch转译,多卡P2P通信与MUSA编程
  • 电子电路:什么是电磁耦合?
  • 【Python 基础与实战】从基础语法到项目应用的全流程解析
  • 虚拟机下ubuntu分区挂载实验
  • Structured Query Language(SQL)它到底是什么?
  • 重写muduo库
  • 深度学习中的分布偏移问题及其解决方法
  • 【Python 算法零基础 4.排序 ⑤ 归并排序】
  • Nature Cancer发表医学AI多模态模型,整合临床、基因、影像以及病理数据,探索跨模态信息融合方法
  • 问题六、SIMTOSIM部分遇到的问题及解决方法
  • hdc - Mac本环境配置
  • Terraform创建阿里云基础组件资源
  • 同一无线网络下的设备IP地址是否相同?
  • 前端[插件化]设计思想_Vue、React、Webpack、Vite、Element Plus、Ant Design
  • Pycharm和Flask的学习心得(4和5)