首页 > 维护restful api的版本的最佳方式

维护restful api的版本的最佳方式

请问大家在维护接口版本时使用的方式一般是URI的方式还是使用header的方式?
另外:比如某一个controller下有版本1的接口也有版本2的更新接口,那这样这个API项目会不会变得越来越臃肿呢?有没有什么好的设计方式呢,多谢大家 :)


两种方式都用过,说说利弊吧
1.URI中带版本号的方式访问 如 /v1/user/1
好处就是可以写成多个controller 方便管理和维护,坏处就是第一前端麻烦,api升级之后还需要更改地址,第二代码存在冗余,在功能可能重叠的情况下可能会写出一些重复代码
2.head带版本号的方式
对于客户端来说调用更方便,所有api接口的地址都不改动,只需要更改自身版本号即可访问新的接口,坏处就是做兼容性有一点麻烦。
推荐的做法是两种一起用,对外的API地址一直保持不变,做一个类似转发器(我直接用的spring的interceptor进行拦截请求),然后内部api还是按照版本写成不同的地址和controller,方便维护和管理

【热门文章】
【热门文章】