java Swagger REST API文档与Sping Boot

3bygqnnd  于 2023-06-04  发布在  Java
关注(0)|答案(3)|浏览(158)

我想使用Swagger 2.0和我的Sping Boot RESTful Web服务来生成文档。我找了很久才找到答案。基本上,我有一个Sping 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配置类,带有@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();
    }

}

从我在这里阅读其他几个答案时收集到的信息来看,在这一点上,我应该能够在诸如http://myapp/v2/api-docshttp://localhost:8080/myapp/api-docs之类的URL中看到一些东西,我假设上述URL的“myapp”部分指的是我的主地址所在的类的名称(这是正确的吗)?我也尝试过这个端口8080和端口80和底线是,我看到除了网站不能达到其他什么。我已经看了herehere提供的答案,但我没有任何成功。任何帮助都将不胜感激,提前感谢您。

n8ghc7c1

n8ghc7c11#

正如您在以下文档中看到的:https://springfox.github.io/springfox/docs/snapshot/#springfox-swagger-ui
端点现在位于swagger-ui.html上,对于您的情况,它将是http://localhost:8080/myapp/swagger-ui.html

6psbrbz9

6psbrbz92#

我用的是,<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

4dc9hkyq

4dc9hkyq3#

1- Use this url to access swagger documentation- 
   http://localhost:8080/swagger-ui/index.html
   http://localhost:8080/swagger-ui.html
2- To view OpenAPI description-
   http://localhost:8080/v3/api-docs

在这里,您可以找到集成示例和示例源代码-
https://javadrill.com/spring-boot-3-swagger-integration-example

相关问题