java - 一种开发多版本java spring Rest api的方法\设计

标签 java spring rest api versioning

需要一种方法\设计来开发多个版本的java spring Rest api,例如: 示例APiV1、示例APiV2、示例APiV3

所有 3 个 API 版本应该同时上线。此外,如果特定版本需要错误修复\增强,这些更改不会影响其他版本,代码重复为零或最少。

最佳答案

对于 API 版本控制,有 3 种方法:

  1. 在 URL 示例中公开 API 版本:

    http://api.example.com/ v1/示例

    http://api.example.com/ v2/示例

  2. 使用 Accept header ,Accept:application/json+v1

  3. 使用自定义 header ,X-Api-Version:1

关于代码,您可以使用路由/ header 来执行相应的功能。

我的意思是,在您的应用程序(中间件)的某个点或在操作之前,您可以从 URL 或 header 并根据您调用功能的值获取版本值。

关于java - 一种开发多版本java spring Rest api的方法\设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42170088/

相关文章:

java - 我的 FitViewport 不适用于所有屏幕

java - 自动设置反向引用

java - 如何在两个不同的页面中使用单个命令对象而不使其成为单例

java - 如何获取两个 REST API 响应的差异?

java - 错误 - 映射 : expected org. apache.hadoop.io.Text 中的键类型不匹配,收到 org.apache.hadoop.io.LongWritable

java - 尽管抛出了预期的异常,但 JUnit 测试失败

java - 是否有一种独立于语言的方法可以将函数添加到 JSR223 脚本绑定(bind)?

java - 使用 spring mvc 和 hibernate 在 jsp 上显示图像

ruby-on-rails - 如何为状态机或有限自动机实现 RESTful 资源

java - 在API响应中返回Enum的值而不是Spring boot中的名称