程序员scholar 程序员scholar
首页
  • Java 基础

    • JavaSE
    • JavaIO
    • JavaAPI速查
  • Java 高级

    • JUC
    • JVM
    • Java新特性
    • 设计模式
  • Web 开发

    • Servlet
    • Java网络编程
  • Web 标准

    • HTML
    • CSS
    • JavaScript
  • 前端框架

    • Vue2
    • Vue3
    • 微信小程序
    • uni-app
  • 工具与库

    • jQuery
    • Ajax
    • Axios
    • Webpack
    • Vuex
    • WebSocket
    • 第三方登录
  • 后端与语言扩展

    • ES6
    • Typescript
    • node.js
  • Element-UI
  • Apache ECharts
  • 数据结构
  • HTTP协议
  • HTTPS协议
  • 计算机网络
  • Linux常用命令
  • Windows常用命令
  • SQL数据库

    • MySQL
    • MySQL速查
  • NoSQL数据库

    • Redis
    • ElasticSearch
  • 数据库

    • MyBatis
    • MyBatis-Plus
  • 消息中间件

    • RabbitMQ
  • 服务器

    • Nginx
  • Spring框架

    • Spring6
    • SpringMVC
    • SpringBoot
    • SpringSecurity
  • SpringCould微服务

    • SpringCloud基础
    • 微服务之DDD架构思想
  • 日常必备

    • 开发常用工具包
    • Hutoll工具包
    • IDEA常用配置
    • 开发笔记
    • 若依框架
    • 日常记录
    • 项目部署
    • 网站导航
    • 产品学习
    • 英语学习
  • 代码管理

    • Maven
    • Git教程
    • Git小乌龟教程
  • 运维工具

    • Docker
    • Jenkins
    • Kubernetes
  • 算法笔记

    • 算法思想
    • 刷题笔记
  • 面试问题常见

    • 十大经典排序算法
    • 面试常见问题集锦
关于
GitHub (opens new window)
首页
  • Java 基础

    • JavaSE
    • JavaIO
    • JavaAPI速查
  • Java 高级

    • JUC
    • JVM
    • Java新特性
    • 设计模式
  • Web 开发

    • Servlet
    • Java网络编程
  • Web 标准

    • HTML
    • CSS
    • JavaScript
  • 前端框架

    • Vue2
    • Vue3
    • 微信小程序
    • uni-app
  • 工具与库

    • jQuery
    • Ajax
    • Axios
    • Webpack
    • Vuex
    • WebSocket
    • 第三方登录
  • 后端与语言扩展

    • ES6
    • Typescript
    • node.js
  • Element-UI
  • Apache ECharts
  • 数据结构
  • HTTP协议
  • HTTPS协议
  • 计算机网络
  • Linux常用命令
  • Windows常用命令
  • SQL数据库

    • MySQL
    • MySQL速查
  • NoSQL数据库

    • Redis
    • ElasticSearch
  • 数据库

    • MyBatis
    • MyBatis-Plus
  • 消息中间件

    • RabbitMQ
  • 服务器

    • Nginx
  • Spring框架

    • Spring6
    • SpringMVC
    • SpringBoot
    • SpringSecurity
  • SpringCould微服务

    • SpringCloud基础
    • 微服务之DDD架构思想
  • 日常必备

    • 开发常用工具包
    • Hutoll工具包
    • IDEA常用配置
    • 开发笔记
    • 若依框架
    • 日常记录
    • 项目部署
    • 网站导航
    • 产品学习
    • 英语学习
  • 代码管理

    • Maven
    • Git教程
    • Git小乌龟教程
  • 运维工具

    • Docker
    • Jenkins
    • Kubernetes
  • 算法笔记

    • 算法思想
    • 刷题笔记
  • 面试问题常见

    • 十大经典排序算法
    • 面试常见问题集锦
关于
GitHub (opens new window)
npm

(进入注册为作者充电)

  • 快速入门

  • 后端手册

  • 前端手册

  • 组件文档

  • 数据库分析

  • 集成插件

    • 集成 Docker 实现一键部署
    • 升级 Spring Boot 到 3.x 版本
    • 集成 Ehcache 实现本地缓存切换
    • 集成 WebSocket 实现实时通信
    • 集成 Electron 实现桌面应用程序
    • 集成 Atomikos 实现分布式事务
    • 集成 MinIO 实现分布式文件存储
    • 集成 Easy-ES 实现分布式全文检索
    • 使用 `localStorage` 代替 `cookie`
    • 使用 Undertow 替代 Tomcat 容器
    • 集成 Actuator 实现优雅关闭应用
    • 集成 AJ-Captcha 实现滑块验证码
    • 集成 Sharding-JDBC 实现分库分表
    • 集成 JustAuth 实现第三方授权登录
    • 集成 `watermark-dom` 实现页面水印
    • 集成 MyBatis-Plus 实现 MyBatis 增强
    • 集成 EasyExcel 实现 Excel 表格增强
    • 集成 Knife4j 实现 Swagger 文档增强
      • 1. 添加 Knife4j 依赖
      • 2. 修改 Vue 项目中的 Swagger 页面跳转地址
      • 3. 登录系统,验证集成效果
      • 4. 提示与建议
    • 集成 Redisson 实现 Redis 分布式锁
    • 集成 IP2Region 实现离线 IP 地址定位
    • 42集成 JSEncrypt 实现密码加密传输
    • 集成 HttpClient 实现 HTTP 接口增强
    • 集成 Druid 实现数据库密码加密功能
    • 集成 Browscap 实现用户代理解析
    • 集成 Dynamic-DataSource 实现多数据源增强
  • 若依框架
  • 集成插件
scholar
2024-08-31
目录

集成 Knife4j 实现 Swagger 文档增强

# 集成 Knife4j 实现 Swagger 文档增强

在若依项目中,可以通过集成 Knife4j 来增强 Swagger 文档的功能。Knife4j 是对 Swagger 的一个 UI 增强解决方案,提供了更加友好的界面、离线文档、接口排序、安全控制、在线调试等功能,使得接口文档的使用更加方便和直观。以下是详细的集成步骤:

# 1. 添加 Knife4j 依赖

首先,在 ruoyi-admin/pom.xml 文件中添加 Knife4j 的 Maven 依赖:

<!-- Knife4j 依赖 -->
<dependency>
    <groupId>com.github.xiaoymin</groupId>
    <artifactId>knife4j-spring-boot-starter</artifactId>
    <version>3.0.3</version>
</dependency>
1
2
3
4
5
6

添加此依赖后,Knife4j 会自动在项目中替换 Swagger 的默认 UI,提供增强的界面。

# 2. 修改 Vue 项目中的 Swagger 页面跳转地址

为了让前端正确跳转到 Knife4j 的文档页面,需要在 ry-ui/views/tool/swagger/index.vue 文件中修改 Swagger 的跳转地址:

// 修改后的跳转地址
src: process.env.VUE_APP_BASE_API + "/doc.html",
1
2

process.env.VUE_APP_BASE_API 是指向后端 API 的基础路径,/doc.html 是 Knife4j 默认的文档页面地址。

# 3. 登录系统,验证集成效果

完成上述配置后,可以登录若依系统,访问 系统工具 -> 系统接口 菜单。如果成功集成 Knife4j,应该可以看到如下增强的接口文档界面。

# 4. 提示与建议

  • 删除 Swagger 依赖:在集成 Knife4j 后,项目中的 Swagger 相关依赖可以删除,因为 Knife4j 已经包含了所有必要的 Swagger 功能,并且提供了增强的界面。

    如果需要删除 Swagger 依赖,请确保在 pom.xml 中去除相关的依赖声明:

    <!-- Swagger 依赖(可删除) -->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
    </dependency>
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
  • 接口文档配置:集成 Knife4j 后,所有原有的 Swagger 配置依然有效,您可以继续使用 Swagger 注解来生成接口文档。Knife4j 仅仅是在 Swagger 的基础上提供了 UI 增强和更多的功能选项。

总结

通过上述步骤,您可以在若依项目中成功集成 Knife4j,并使用其增强的接口文档功能。Knife4j 不仅提供了更加美观的界面,还增强了文档的可读性和可操作性,使得开发人员和测试人员在使用 API 文档时更加得心应手。

编辑此页 (opens new window)
上次更新: 2024/12/28, 18:32:08
集成 EasyExcel 实现 Excel 表格增强
集成 Redisson 实现 Redis 分布式锁

← 集成 EasyExcel 实现 Excel 表格增强 集成 Redisson 实现 Redis 分布式锁→

Theme by Vdoing | Copyright © 2019-2025 程序员scholar
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式