关于Knife4j文档请求异常解决方法

再学习黑马苍穹外卖项目swagger时,按照相同的配置方式,再更改数据库用户名和密码后,启项目时请求swagger生成的接口文档时遇到了Knife4j请求异常的问题,经过数小时努力,现已解决,方法如下,可供参考:

一、根据Knife4j官方异常处理参考方法自检

​​​​​​https://doc.xiaominfo.com/docs/faq/knife4j-exception

二、检查Spring Boot 版本兼容性

首先,确保您了解您的项目所使用的Spring Boot版本。

以下是一些常见的Spring Boot版本及其对应的Knife4j版本兼容推荐:

Spring Boot版本Knife4j Swagger2规范Knife4j OpenAPI3规范
1.5.x~2.0.0<Knife4j 2.0.0>=Knife4j 4.0.0
2.0~2.2Knife4j 2.0.0 ~ 2.0.6>=Knife4j 4.0.0
2.2.x~2.4.0Knife4j 2.0.6 ~ 2.0.9>=Knife4j 4.0.0
2.4.0~2.7.x>=Knife4j 4.0.0>=Knife4j 4.0.0
>= 3.0>=Knife4j 4.0.0>=Knife4j 4.0.0

Knife4j在之前的版本更新中,逐渐提供了一些服务端适配的增强特性功能。

三、更改项目Spring Boot版本

1.将项目中父模块sky-take-out的pom.xml文件中父依赖Spring Boot 改为2.7.3

    <parent>
        <artifactId>spring-boot-starter-parent</artifactId>
        <groupId>org.springframework.boot</groupId>
        <version>2.7.3</version>
    </parent>

2.将工程中所有knife4j依赖版本号改为3.0.2

            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-spring-boot-starter</artifactId>
                <version>3.0.2</version>
            </dependency>

3.更改项目java编译器的版本 使用jdk11即可。操作如下:点击File-->Project Structer

4.同时做如下更改 同样将Spring Boot的编译版本改为11

5.以上更改完成后,还需要做出最后一步,在maven中对父工程install:

四、启动项目 访问http://localhost:8080/doc.html,可以访问如下的swagger接口页面,至此问题就解决了。

  • 6
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
解决Knife4j文档请求异常404的问题,可以按照以下步骤进行操作。首先,分析原因可以通过打开F12开发者工具,查看请求接口是否返回404未找到异常。接下来,找到对应业务的启动类,在该类上加上@EnableSwagger2WebMvc注解,然后重启应用即可解决该问题。\[1\] 另外,为了正常使用Knife4j生成API接口文档,需要引入相应的jar包。具体的依赖如下所示: ``` <!--Swagger-UI API文档生产工具--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency> <!--swagger增强工具依赖包,方便生成接口文档。非必须导入--> <dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>knife4j-spring-boot-starter</artifactId> <version>2.0.8</version> </dependency> ``` 确保以上依赖已正确引入。\[2\] 此外,如果你在后端代码中使用了返回后端数据统一注解ResponseResult,并且需要在WebMvcConfigurer/WebMvcConfigurationSupport中注入拦截器,可以考虑不破坏启动类的干净,以保证正常运行。\[3\] 通过以上步骤,你应该能够解决Knife4j文档请求异常404的问题。 #### 引用[.reference_title] - *1* [Knife4j文档请求异常](https://blog.csdn.net/weixin_52914457/article/details/120999070)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [整合Knife4j生成文档后端接口文档出现404无法找到doc.html](https://blog.csdn.net/jianxia801/article/details/114288604)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值