【问题标题】:Override the path of my API in Springfox Swagger在 Springfox Swagger 中覆盖我的 API 的路径
【发布时间】:2018-07-16 09:00:46
【问题描述】:

我正在将 Spring REST 与 Springfox Swagger 一起使用,并且我有一个方法,例如

@RequestMapping(method = RequestMethod.POST, value = "/my-methd")
@ApiOperation(value = "My method")

一切正常。

现在我注意到路径中有一个拼写错误。我已经有使用现有 API 的客户端,因此我希望同时支持旧版本和新版本,但文档中只显示新版本。

我可以像下面这样更正它:

@RequestMapping(method = RequestMethod.POST, value = {
   "/my-methd",  // Spelling mistake, deprecated
   "/my-method"  // To be used by new software
})
@ApiOperation(value = "My method")

但是,旧拼写和新拼写都会出现在 Swagger 文档中。

我希望两者都能工作,但只有新拼写会出现在 Swagger 文档中。

@ApiOperation 具有覆盖 HTTP 方法和许多其他东西的功能,但似乎不是路径。

有什么我可以在这里做的吗?

(我什至不能在文档中将旧方法标记为“已弃用”,因为文档来自方法注释,它在两个路径之间共享。)

【问题讨论】:

    标签: spring-rest springfox


    【解决方案1】:

    我建议只创建一个新的单独方法,一个带有拼写错误的 RequestMapping“/my-methd”,另一个用于正确的“/my-method”。 然后很容易将拼写错误的标记为已弃用。 此外,您可以通过这种方式在代码中放置适当的 cmets,以便将来更容易维护/删除。

    【讨论】:

      猜你喜欢
      • 2020-05-12
      • 1970-01-01
      • 2019-09-11
      • 2017-05-28
      • 2016-03-01
      • 1970-01-01
      • 2019-08-04
      • 2015-08-11
      • 1970-01-01
      相关资源
      最近更新 更多