繁体   English   中英

Swagger REST API Spring 引导文档

[英]Swagger REST API documentation with Spring Boot

我想将 Swagger 2.0 与我的 Spring Boot RESTful web 服务一起使用来生成文档。 我已经搜索了相当多的答案。 基本上我有一个带有一组控制器的 Spring Boot 项目,我想记录 API。 我的 POM 文件中有以下依赖项设置。

<dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <version>2.4.0</version>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>2.5.0</version>
    </dependency>

这是我的 Swagger 配置 class 与 @Configuration 和 @EnableSwagger2:

      @Configuration
      @EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket api(){
        return new Docket(DocumentationType.SWAGGER_2)
            .select()
            .apis(RequestHandlerSelectors.any())
            .paths(PathSelectors.regex("/api/.*"))
            .build()
            .apiInfo(apiInfo());
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
            .title("My application title")
            .description("This is a test of documenting EST API's")
            .version("V1.2")
            .termsOfServiceUrl("http://terms-of-services.url")
            .license("LICENSE")
            .licenseUrl("http://url-to-license.com")
            .build();
    }

}

根据我在这里阅读其他几个答案时收集到的信息,此时我应该能够在 URL 看到一些东西,例如http://myapp/v2/api-docs或者http://localhost:8080/ myapp/api-docs我假设上面 URL 的“myapp”部分指的是我的 main 所在的 class 的名称(这是正确的)吗? 我也用端口 8080 和端口 80 尝试过这个,最重要的是我除了无法访问站点之外什么也看不到。 我查看了此处此处提供的答案,但没有取得任何成功。 任何帮助将不胜感激,在此先感谢您。

正如您在以下文档中看到的那样: https : //springfox.github.io/springfox/docs/snapshot/#springfox-swagger-ui

端点现在在swagger-ui.html上,对于您而言,它将是http:// localhost:8080 / myapp / swagger-ui.html

我用<artifactId>springdoc-openapi-ui</artifactId>

public class OpenApiConfiguration{

     @Bean
     public GroupedOpenApi abcApp(){
        String[] abcAppRootPath={"com.stockoverflow.swagger"};
        return GroupedOpenApi.builder().group("my app").packagesToScan(abcAppRootPath).build();
    }
}

参考: https://springdoc.org/#getting-started

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM