我们必须在openapi 2.0中手动配置api端点吗



我是Java新手。我正在开发一个使用openapi 2.0进行swagger的遗留应用程序。我添加了一个带有2个api端点的新控制器。这两个api端点没有出现在swaggerui中。我在openapi.json中看到了现有端点的条目。我尽量不手动编辑openapi.jsn。我们是否必须在openapi.json 2.0版本中手动配置api端点才能在swagger ui中显示?我们使用gradle来构建我们的项目。我重建了这个项目,但运气不好。

大部分教程似乎都是针对openapi 3.0的,而不是2.0。openapi3.0似乎可以自动生成swaggerui中的所有端点,但不确定2.0是否能做到这一点。

大部分教程似乎都是针对openapi 3.0的,而不是2.0

是的,3.x是最新版本。3.0以后的版本称为OpenAPI。由于历史原因,3.0之前的版本被称为Swagger。

openapi 3.0似乎可以自动生成swagger ui中的所有端点,但不确定2.0是否能做到这一点。

您的问题与您的规范版本无关。您总是希望您的API规范与您的实现同步。因此,您需要决定thruth的来源、API规范或代码。因此,选择一种方法:

  • 要么根据规范生成代码,例如按照本教程执行。从生成的代码中,您还可以自动生成Swagger UI文档。OpenAPI有几个代码生成器,您必须选择其中一个
  • 或者,您可以根据您的规范手动编写代码。基于注释,您可以创建文档。例如,这里对这种方法进行了解释

基于您的陈述

我添加了一个带有2个api端点的新控制器。[…]我尽量不手动编辑openapi.json

我假设您采用第二种方法。因此,您最好了解一下您的文档是如何在此时自动生成的,以确保您的新端点也能显示出来。不能根据你的要求进一步判断什么是错误的。

最新更新