一、前言
一个项目中,随着需求的变更或增加,API接口也会跟着变化,而如果项目发布后,已使用的接口肯定不能直接覆盖更新,需要新增升级版本接口和新的版本对应,因此多个版本接口更替后,如何更优雅管理不同版本接口代码,如何设计更直观的接口文档呈现给前端,这是后端工程师需要考虑的事情,下面分享一些接口版本管理的经验。
二、接口代码版本规范
考虑到接口今后一定会进行版本迭代,因此一开始开发的时候,就需要对代码进行版本考量下的代码目标架构。 1. 控制器目录架构
在controller下增加子集文件夹:controller/v1/……、controller/v2/……等等,初始版本的接口全部放在v1下。 2. 接口路由设计
3. 不同版本控制器代码分类依据 (1)在项目发布前的所有代码,都属于v1版本代码; (2)发布后,如果是新增加的需求,和已发布v1版本接口需求不冲突,新增控制器或接口,仍然属于v1版本代码; (3)发布后,如果新增需求和v1已发布版本接口冲突,为了兼容老版本APP,必须在v2文件夹下新增控制器开发v2版本接口。 遵循以