| 服务端 | 新增可选字段;废弃字段先标记保留期;版本化仅用于不兼容变更 |
|---|---|
| 客户端 | 忽略未知字段(健壮性原则);对废弃字段有降级路径 |
| 验证 | 契约测试保证双方预期一致(如 Pact) |
演进示例
演进示例
// v1:{"amount": 100}
// v2 兼容演进:
{"amount": 100, "currency": "CNY"} // 新增可选字段,旧客户端忽略接口下线流程:公告期 → 流量观测(确认无调用)→ 移除;保留全流程记录。
接口演进遵守兼容规则:只增字段、不删不改语义;客户端按「兼容近 N 个版本」设计,升级与服务解耦。
| 服务端 | 新增可选字段;废弃字段先标记保留期;版本化仅用于不兼容变更 |
|---|---|
| 客户端 | 忽略未知字段(健壮性原则);对废弃字段有降级路径 |
| 验证 | 契约测试保证双方预期一致(如 Pact) |
// v1:{"amount": 100}
// v2 兼容演进:
{"amount": 100, "currency": "CNY"} // 新增可选字段,旧客户端忽略