小编onl*_*alu的帖子

Swagger OpenAPI 3.0 - Springdoc - GroupedOpenApi 无法在 Spring MVC 中工作

我的应用程序是 Spring MVC 无法启动。

我正在使用 springdoc-openapi-ui 1.4.4

另外,我将以下导入添加到我的 @configuration 类之一;

    org.springdoc.core.SpringDocConfigProperties.class, org.springdoc.core.SpringDocConfiguration.class, 
    org.springdoc.webmvc.core.SpringDocWebMvcConfiguration.class,
    org.springdoc.webmvc.core.MultipleOpenApiSupportConfiguration.class,
    org.springdoc.core.SwaggerUiConfigProperties.class, org.springdoc.core.SwaggerUiOAuthProperties.class,
    org.springdoc.webmvc.ui.SwaggerConfig.class, org.springdoc.core.CacheOrGroupedOpenApiCondition.class,
    org.springframework.boot.autoconfigure.jackson.JacksonAutoConfiguration.class })
Run Code Online (Sandbox Code Playgroud)

并按如下方式实现 bean

@Bean
public GroupedOpenApi publicApi() {
    return GroupedOpenApi.builder()
            .group("user")
            .pathsToExclude("/api/v2/**", "/v2/**")
            .pathsToMatch("/api/v1/**", "/v1/**")
            .build();
}
@Bean
public GroupedOpenApi adminApi() {
    return GroupedOpenApi.builder()
            .group("admin")
            .pathsToExclude("/api/v1/**", "/v1/**")
            .pathsToMatch("/api/v2/**", "/v2/**")
            .build();
}

@Bean
public OpenAPI customOpenAPI() {
    return new OpenAPI()
        .components(new Components())
        .info(new Info()
            .title("titleI")
            .version("1.0.0"));
}

Run Code Online (Sandbox Code Playgroud)

但当我尝试时http://localhost:8080/MyApp/v3/api-docs/user

给我 404。

但我得到了列出的所有 APIhttp://localhost:8080/MyApp/v3/api-docs

也进来了http://www.onlykalu.com:81/MyApp/swagger-ui/index.html?configUrl=/MyApp/v3/api-docs/swagger-config

也没有定义下拉。

如果我添加

springdoc.group-configs[0].group=user
springdoc.group-configs[1].group=admin
Run Code Online (Sandbox Code Playgroud)

到 application.properties …

java spring-mvc openapi springdoc-openapi-ui

8
推荐指数
1
解决办法
2万
查看次数

标签 统计

java ×1

openapi ×1

spring-mvc ×1

springdoc-openapi-ui ×1