当前位置: 首页 > 知识库问答 >
问题:

spring boot - springdoc open api:没有提供api定义错误

郎子平
2023-03-14

我需要用 SpringDoc OpenAPI 记录我的 spring boot 应用程序的 rest apis。因此,我在我的pom中添加了此依赖项.xml:

<dependency>
    <groupId>org.springdoc</groupId>
    <artifactId>springdoc-openapi-ui</artifactId>
    <version>1.6.8</version>
</dependency>

这是我的配置类:

@Configuration
public class SwaggerConfig {

    @Bean
    public GroupedOpenApi apis() {
        return GroupedOpenApi.builder()
            .group("my-application")
            .packagesToScan("com.myapp.base")
            .pathsToMatch("/**")
            .build();
    }
}

当我想在/baseurl/swagger-ui/index.html中使用swagger-ui时,结果如下:

我的配置有什么问题?

我使用Spring靴2.6.6。

注意:我认为在浏览器控制台(401,404)中加载大摇大摆的资源没有任何问题。此外,我在应用程序中禁用了Spring安全性,没有任何与安全性或加载大摇大摆的资源有关的问题。

共有1个答案

艾昊明
2023-03-14

你的豆子对我来说看起来不错,但你可能没有达到 Swagger-UI 的正确endpoint。

URL/base-URL/swagger-ui/index.html指向SwaggerCore库提供的swagger ui,您对此无能为力。

Springdoc对Swagger Core具有传递依赖性,因此该页面可用。但是Springdoc公开其Swagger-UI的URL是/bas-url/swagger-ui.html

关于为什么会这样以及如何更新的解释,请参考这里的答案。

 类似资料:
  • 我无法在swagger ui中显示我的spring文档。这是我的配置: 我输入这个URL来访问接口:http://localhost:8080/swagger-ui.html 问题是它没有显示从以下位置加载的api-docs: "http://localhost:8080/v3/api-文档/招摇配置“ 状态:200。 但是如果我在url字段中输入这个,它会工作。。我的目标不是每次都进入这个。。

  • 我有一个简单的引导应用程序,其中我添加了开放api swagger依赖项 以及这些属性 我收到这些错误(在呼叫时http://localhost:8080/swagger-用户界面/索引。html): 这是我的控制器: 知道吗?

  • 我有一个自定义的十进制格式管道,它使用角十进制管道。这个管道是共享模块的一部分。我在功能模块中使用它,运行应用程序时没有出现提供者错误。 ./modules/shared.module.ts 我将自定义管道插入其中一个组件中,并调用transform方法来获得转换后的值。共享模块导入到功能模块中。

  • 无法呈现此定义,提供的定义没有指定有效的版本字段。 请指出一个有效的Swagger或OpenAPI版本字段。支持的版本字段有:“2.0”和那些与OpenAPI:3.0.n匹配的版本字段(例如,OpenAPI:3.0.0)。

  • 我尝试通过Outlook contacts REST API获取用户联系人。我很想获得访问令牌,但当我试图获得联系人时,我得到了404错误。 这是我从Microsoft教程中摘录的代码 有人能说说我做错了什么吗?

  • 问题内容: 我只是熟悉Apache JackRabbit。我已经完成了一些用于文档管理的多用户存储库。 如果有人同时使用它们,您能回答这些问题吗? ModeShape是否以某种方式链接到JBoss?我对JBoss AS或任何其他JBoss工具没有太多经验。我看到了对tomcat的支持,但是有很多JBossy的东西 文档说将来的发行版应该具有UI集成,这还有很长的路要走吗?它将是什么样的UI集成?是

  • 从angular 4.4升级到5.0,并将所有HttpModule和Http更新到HttpClientModule后,我开始出现此错误。 我还再次添加了HttpModule,以确保这不是由于某些依赖关系造成的,但它并不能解决问题 应用程序内。模块,我已正确设置 我不知道这个错误是从哪里来的,或者我不知道如何去了解它。我也有一个警告(也放在下面),可能是相关的。 警告信息:

  • 我试图通过实现在应用程序中使用Spring security实现自定义身份验证。身份验证是成功的,并且用户也具有指定的角色,但我仍然总是得到访问被拒绝的页面。下面是我的代码。我是Spring保安的新手。请帮帮忙。提前致谢 原木