原有版本存在不足,为提升功能需升级 Swagger,具体步骤如下:


一:添加父项目的pom文件

        1.1:引用segger3的版本

                

<!--        swgger3版本号-->
        <knife4j.version>4.4.0</knife4j.version>

1.2:添加相关依赖

            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-openapi3-spring-boot-starter</artifactId>
                <version>${knife4j.version}</version>
            </dependency>

            <dependency>
                <groupId>com.github.xiaoymin</groupId>
                <artifactId>knife4j-gateway-spring-boot-starter</artifactId>
                <version>${knife4j.version}</version>
            </dependency>

1.3:示例截图

        

二:网关微服务修改:

        1.1:将网关的文件删除,示例如下:

                

       1.2:在网关服务里面添加相对应的依赖

               

         <!-- RuoYi Common Knife4j -->
        <dependency>
            <groupId>com.ruoyi</groupId>
            <artifactId>ruoyi-common-swagger</artifactId>
        </dependency>
        <!--  Gateway Spring Boot Starter-->
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-gateway-spring-boot-starter</artifactId>
        </dependency>

三:在ruoyi-common-swagger修改pom文件增加一个依赖,示例如下:

        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-gateway-spring-boot-starter</artifactId>
            <version>${knife4j.version}</version>
        </dependency>

四:在网关模块里面resources下的bootstrap.yml文件,添加配置

       4.1:添加一个关于升级seagger的相关配置,示例如下:

        

# knife4j 网关聚合配置
knife4j:
  enable: true
  production: false
  basic:
    enable: false
  gateway:
    enabled: true
    # 指定服务发现的模式聚合微服务文档
    strategy: discover
    discover:
      enabled: true
      # 指定版本号(OpenAPI3)
      version: openapi3
      # 需要排除的微服务(网关服务本身)
      excluded-services:
        - ruoyi-gateway

4.2:在同样的配置文件下面添加一个避免spring MVC的冲突(这个配置强制Spring Boot以响应式模式运行,明确告诉Spring Boot使用WebFlux而不是Web MVC,从而避免了与Spring MVC的冲突),示例如下:

  main:
    web-application-type: reactive

五:在nacos中的gateway配置中新增白名单

        5.1:示例如下:

在这里插入图片描述

        

  # 不校验白名单
  ignore:
    whites:
      - /auth/logout
      - /auth/login
      - /auth/register
      - /csrf
      - /doc.html
      - /doc.html/**
      - /v3/api-docs
      - /v3/api-docs/**
      - /*/v3/api-docs
      - /*/v3/api-docs/**
      - /swagger-resources
      - /swagger-resources/**
      - /webjars/**
      - /favicon.ico

六:启动服务,示例如下:

       

若所有服务均显示版本号且无报错信息,则表明启动成功

七:启动服务后,点击网关版本号并输入"/doc.html",即可显示以下页面(表示升级成功):

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐