← 中文资源

简体中文版本

API 版本发布与下线

并行运行新旧 API 版本,衡量消费者迁移,使用标准弃用头公告,并在流量归零后移除旧版本。

阅读英文原文

有退出计划的版本化

新增版本容易,移除版本需要知道谁仍在调用。公告下线前,先按版本和客户端埋点统计请求。

Deprecation: true
Sunset: Wed, 31 Dec 2026 23:59:59 GMT
Link: <https://docs.example.com/migrate-v2>; rel="deprecation"

步骤

  1. 定义并文档化新版本的变更、迁移指南和兼容边界,在路径或媒体类型中标识版本。
  2. 新旧版本并行运行,尽量共享数据,旧版本行为保持不变。
  3. 按版本和客户端统计请求,联系仍使用旧版本的客户端所有者并提供迁移支持。
  4. 添加 Deprecation 与 Sunset 头及文档日期,监控错误响应与支持渠道中的迁移阻塞。
  5. 只有流量归零或公告日期到达且有明确风险接受后,才移除旧版本。

验证

  • 指标显示哪些客户端仍在使用旧版本。
  • 新版本通过契约与集成测试。
  • 弃用头与文档已上线。
  • 剩余消费者已确认迁移计划。
  • 下线返回文档化错误,支持路径已更新。

决策点

路径版本 /v2/ 更直观、路由简单;有强媒体类型约定的组织可使用媒体类型版本。存在剩余流量时,除非消费者已知、已通知并明确接受中断,否则应延长截止日期。

避免版本蔓延

每个版本都有维护成本。优先使用增量、向后兼容的变更。不可避免的破坏性变更应在发布新版本前定义重叠窗口与移除标准,而不是事后决定。