【发布时间】:2021-10-08 20:07:09
【问题描述】:
我收到错误 - "请指明有效的 Swagger 或 OpenAPI 版本字段。支持的版本字段为 swagger:"2.0" 和与 openapi:3.0.n 匹配的版本字段(例如,openapi:3.0.0)。" 当我将生成的 json 从 /api-docs 粘贴到 editor.swagger.io 时。 我有一些观察。
-
localhost:8080/v3/api-docs/ 产生 -
"{\"openapi\":\"3.0.1\", "\info\":{ ----------------此 json 在 editor.swagger.io 中给出了上述错误。 -
关于手动删除初始双引号和转义字符,即
{"openapi":"3.0.1", "info":{ ----------------错误消失,即 UI 呈现没有任何问题。 -
我的项目springboot版本是2.2.13.RELEASE,springdoc-openapi-ui版本是1.5.8,jackson-databind版本是2.10.5.1
-
OpenAPI 配置类 -
@Configuration
public class Config1 {
@Bean
public GroupedOpenApi publicApi() {
return GroupedOpenApi.builder()
.group("user")
.pathsToMatch("/v1/**")
.build();
}
@Bean
public OpenAPI customOpenAPI() {
return new OpenAPI()
.info(new Info().title("title1").description("test").version("1.0.0"));
}
如果我需要任何进一步的信息,请告诉我。有关该问题的任何意见都会有所帮助。谢谢。
【问题讨论】:
-
请发布您的 Springdoc 配置和任何可能与
/api-docs/内容的生成和服务方式相关的代码。 -
@Helen 我已将 Springdoc 配置添加为问题中的第 4 点。根据我的理解 /api-docs/ 内容默认是从 springdoc-openapi-ui 包生成的。如果您需要任何进一步的输入,请告诉我。谢谢。
标签: swagger swagger-ui openapi springdoc-openapi-ui springdoc-openui