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

发布于 2022-09-01 15:55:55 字数 133 浏览 7 评论 0

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

金兰素衣 2022-09-08 15:55:55

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

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文