首页 前端知识 SpringBoot3 Springdoc:v3/api-docs可以访问,html无法访问的解决方法

SpringBoot3 Springdoc:v3/api-docs可以访问,html无法访问的解决方法

2025-03-11 15:03:55 前端知识 前端哥 635 959 我要收藏

 项目环境

springboot 3.3.4
pom.xml引用如下(springdoc相关的只有这一个,理论上说,要跑springdoc或者叫它swagger3,除了springboot,加这个就可以了,不需要任何配置类配置、application.properties/yaml配置!!)
(当然,你跑通了之后需要自定义配置了再配)

<dependency>
<groupId>org.springdoc</groupId>
<artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
<version>2.6.0</version>
</dependency>
复制

问题描述

启动服务器之后:
v3/api-docs可以访问,并返回json数据。
/swagger-ui/index.html无法访问,报错404。

解决方法

spring配置类里配一下swagger-ui的资源路径,然后访问/swagger-ui/index.html就好了。
PS:路径里最后的5.17.14建议查一下自己引用的依赖是什么版本。

@SpringBootApplication
public class SpringbootApplication implements WebMvcConfigurer {
public static void main(String[] args) {
SpringApplication.run(SpringbootApplication.class, args);
}
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// 配置 Swagger UI 资源路径
registry.addResourceHandler("/swagger-ui/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/swagger-ui/5.17.14/");
}
}
复制

解决过程

  1. 先改日志级别 logging.level.root=debug
  2. 启动访问swagger-ui.html(这里被误导了,应该去swagger-ui/index.html,不过对排查没影响,排查后也明白过来了)
  3. 回去看服务器debug日志,发现在查找资源的时候,找的那些路径似乎没有swagger相关的资源路径,然后想起来之前查的哪个文里提到了swagger-ui.jar里的资源地址,然后顺着摸过去
  4. 欸,里面有个index.html,我觉得就是它了,然后印象里有另一个文里说了资源路径的配置方法,照着配一下资源路径,ojbk

展示

访问(我配的端口是18080):localhost:18080/swagger-ui/index.html
上方的搜索栏输入api-docs的网址,点击Explore即可。

转载请注明出处或者链接地址:https://www.qianduange.cn//article/23229.html
评论
还可以输入200
共0条数据,当前/页
发布的文章

面试题之强缓存协商缓存

2025-03-11 15:03:21

【C语言】数组篇

2025-03-11 15:03:19

正则表达式(复习)

2025-03-11 15:03:17

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!