Spring Boot 3 springdoc-openapi 加载远程配置失败

问题描述 投票:0回答:1

我已经为我当前的项目添加了 swagger,该项目使用的是 spring 版本 3.1.2。

我在 pom.xml 中添加了以下依赖项

        <dependency>
            <groupId>org.springdoc</groupId>
            <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
            <version>2.2.0</version>
        </dependency>

在application.yml里面这个配置:

springdoc:
  api-docs:
    path: /api-docs
    enabled: true

在我的 SpringBootApp 主类中添加了 @OpenAPIDefinition 注释

当我运行应用程序并访问 http://localhost:8080/swagger-ui/index.html 时,我收到此消息

在应用程序内我收到消息:

WARN 35407 --- [io-8080-exec-10] o.s.web.servlet.PageNotFound No mapping for GET /v3/api-docs/swagger-config

我已按照本教程中的说明进行操作,并看到类似的问题,例如此处,但仍然无法正常工作。

有人知道我做错了什么。

我希望看到 swagger 正常工作,但没有按预期工作。

我已经阅读了整个教程示例,但我无法使其工作。

spring-boot swagger-ui springdoc-openapi-maven-plugin
1个回答
0
投票

我也遇到了和你类似的问题:

这是我的 代码片段,来自我的 “application.yml” 文件。

       springdoc:
         show-actuator: true
         api-docs:
           path: /authentication-service/v3/api-docs             

这是我的“openapi”依赖项。

<properties>        
    <springdoc.version>2.3.0</springdoc.version>
</properties>

 <dependency>
    <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
    <version>${springdoc.version}</version>
</dependency>

- 有什么问题吗?

默认情况下,spring 文档搜索“/v3/api-docs”,如下图所示:

standard swagger image

当我在 “api-docs” 中更改我的 path 时,但我输入:

  springdoc:
     show-actuator: true
     api-docs:
       path: authentication-service/v3/api-docs

然后:

failed to load remote configurations

这一切都是由于缺少反斜杠造成的。

另一种选择是配置 “swagger-ui”,如下所示:

springdoc:
  show-actuator: true
  api-docs:
    path: /authentication-service/v3/api-docs
  swagger-ui:
    enabled: true  
    url: /authentication-service/v3/api-docs

然后:

correct load

我相信,如果“api-docs”配置正确,它应该可以工作,我希望我有所帮助。

致以诚挚的问候,

© www.soinside.com 2019 - 2024. All rights reserved.