实用:优雅设计接口版本号

转载自:https://blog.mariojd.cn/how-to-design-spring-boot-api-version-number-elegantly.html

  
  一般来说,系统上线以后,需求仍会发生变动,功能也会迭代更新。可能是接口参数发生变更,也有可能是业务逻辑需要调整,如果直接在原来的接口上进行修改,必然会影响原有服务的正常运行。
  常见的解决方案,是在接口路径中加入版本号用于区分,此外还可以在参数甚至 header 里带上版本号。这里以在请求路径中带上版本号为例,如:http://IP:PORT/api/v1/test ,v1 即代表的是版本号。当然了,可以像这样,直接写死在 @RequestMapping(“api/v1/test”)属性中,不过下面提供了更为优雅的解决方案。

1.自定义版本号标记注解

实用:优雅设计接口版本号

2.重写相应的 RequestCondition

实用:优雅设计接口版本号实用:优雅设计接口版本号

3.重写部分 RequestMappingHandlerMapping 的方法

实用:优雅设计接口版本号

4.配置注册自定义的 CustomRequestMappingHandlerMapping

实用:优雅设计接口版本号

5.编写接口,标记上相应的 @ApiVersion

实用:优雅设计接口版本号

6.启动 Application,测试及查看结果

实用:优雅设计接口版本号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值