# restapi-version-demo **Repository Path**: cnsyear/restapi-version-demo ## Basic Information - **Project Name**: restapi-version-demo - **Description**: /我又要写代码了! 一个接口版本控制的东东~~~ - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-09-09 - **Last Updated**: 2021-09-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README /我又要写代码了! 一个接口版本控制的东东~~~ 场景: 早上程序员AA按照原型上的字段一把梭就把CRUD给写完了,交付给前端对接,测试完成发布APP上线。 下午产品经理BB有一个新的想法需要修改一些逻辑,程序员AA再次按照原型上的字段一把梭就把CRUD给写完了,交付给前端对接,测试完成发布APP上线。 此时就会出现旧版本的APP调用修改后的新接口导致不能使用,此时我们需要让旧接口和新接口同时存在,除非强制更新APP版本。 接口风格规定:(每家公司要求不一样,按照你喜欢的风格来) 1 通过参数来区别 http://xxx.com/get?version=1.0.0 http://xxx.com/get?version=1.0.1 或者把version参数放在header中 2 通过路径控制 http://xxx.com/v1.0.0/get http://xxx.com/v1.0.1/get 一些大厂的接口设计 Gitee 路径控制 ![](./img/20210909150954.png) 腾讯云 V3放在header中 ![](./img/20210909151911.png) V1放在参数中 ![](./img/20210909151944.png) 阿里云 提供SDK,不同的版本SDK不同 ![](./img/20210909152413.png) 百度 路径控制 ![](./img/20210909153025.png) 京东 ![](./img/20210909153448.png)