java Spring 文档:404页面找不到了

kkih6yb8  于 2022-10-30  发布在  Java
关注(0)|答案(3)|浏览(215)

我有一个spring Boot 应用程序(2.5.6),它依赖于springdoc-openapi。但是,启动swagger-ui(http://localhost:8080/v1/swagger-ui/index.html)不起作用。调试日志显示index.html不存在。找不到index.html的原因可能是什么?

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

application.yaml

springdoc:
  swagger-ui:
    tagsSorter: alpha
    operations-sorter: alpha
    doc-expansion: none
    disable-swagger-default-url: true

logging:
  level:
    root: DEBUG

server:
  port: 8080

spring:
  application:
    name: fe-applic-app
    api-version: "v1"

falq053o

falq053o1#

尝试使用swagger-ui.html而不是swagger-ui/index.html。在60%的情况下,swagger-ui.html会重定向到其真实的位置。
您必须遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他有关法律法规。

rekjcdws

rekjcdws2#

我找到了问题的原因。在application. yaml中没有设置上下文路径。
您的位置:首页〉〉
添加servlet后:context-path,则呈现swagger-ui

server:
  port: 8080
  servlet:
    context-path: "/${spring.application.api-version}"
ioekq8ef

ioekq8ef3#

将以下内容添加到您的配置中:

@Configuration
public class WebAppConfig extends WebMvcConfigurationSupport
{

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry)
    {
        registry.addResourceHandler("/swagger-ui/**")
        .addResourceLocations("classpath:/META-INF/resources/webjars/swagger-ui/4.14.3/");
    }

请参阅源代码和static-resources

相关问题