上篇我们聊聊springboot是怎么继承knife4j的。
本次我们一起学习springcloudgateway集成knife4j。
java:17
SpringBoot:3.2.0
SpringCloud:2023.0.0
knife4j : 4.4.0
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-gateway-spring-boot-starter</artifactId>
<version>4.4.0</version>
</dependency>
如果子服务非常多的情况下,那么手动配置就会显得很累,那么可以通过服务发现的模式,自动从注册中心聚合文档,不过服务发现的模式。
我的所有子服务全部是OpenAPI3规范。
knife4j:
gateway:
enabled: true
# 指定服务发现的模式聚合微服务文档,并且是默认`default`分组
strategy: discover
discover:
enabled: true
# 指定版本号(Swagger2|OpenAPI3)
version : openapi3
# 需要排除的微服务(eg:网关服务)
excluded-services:
- gateway-demo
注意:生产环境上线时,配置文件通过配置knife4j.gateway.enabled: false进行关闭,避免接口泄漏,造成安全问题。