云原生架构--Restful API版本设计

云原生

1.事情总是会改变的,这才是唯一不变。

2.客户端和服务器端应该提供一定灵活性,来降低对变化的敏感。

3.客户端可以使用JSON-Path来获得需要的数据

4.服务器端对参数“宽容”,可以容忍参数中存在自己不需要的其他信息。

5.服务器端的改变应该是渐进式和附加式的,而不是破坏式的。

6.使用“语义版本号”。形如MAHOR.MINOR.PATCH

  • MAHOR版本号只有在API不兼容以前版本时才更改
  • MINOR版本号在API发生改变单客户端还能继续使用时更改
  • PATCH版本号更改,表示对现有功能错误的修复

7.当多个版本的API共存时,建议只在一个代码库中提供不同版本的API

8.可以将旧版本的请求,转发到新版本API

9.客户端需要告诉服务器,使用那个版本API进行通信。restful API有以下方法:

  • 在URL中增加版本号
  • 将版本号放到http的头信息中
  • 将版本号方法哦请求Accept头信息的内容类型中
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容