knife4j,微服务聚合Swagger文档

前置知识

我们将采用Nacos作为注册中心,Gateway作为网关,使用knife4j来生成API文档,对这些技术不了解的朋友可以看下下面的文章。

  • Spring Cloud Gateway:新一代API网关服务

  • Spring Cloud Alibaba:Nacos 作为注册中心和配置中心使用

  • 给Swagger换了个新皮肤,瞬间高大上了!

应用架构

我们理想的解决方案应该是这样的,网关作为API文档的统一入口,网关聚合所有微服务的文档,通过在网关进行切换来实现对其他服务API文档的访问。

相关服务划分:

  • micro-knife4j-gateway:网关服务,作为微服务API文档的访问入口,聚合所有API文档,需要引入文档前端UI包;

  • micro-knife4j-user:用户服务,普通API服务,不需要引入文档前端UI包;

  • micro-knife4j-order:订单服务,普通API服务,不需要引入文档前端UI包。

具体实现

下面详细介绍下Spring Cloud Gateway + knife4j 聚合API文档的具体实现,依次搭建用户服务、订单服务和网关服务。

micro-knife4j-user

我们首先来搭建用户服务,一个普通的API服务,很简单,仅需三步即可集成knife4j。

  • pom.xml中添加相关依赖,一个SpringBoot的web功能依赖,knife4j的微服务依赖(不包含API文档的前端UI包);


    
        org.springframework.boot
        spring-boot-starter-web
    
    
        com.github.xiaoymin
        knife4j-micro-spring-boot-starter
    

  • application.yml这添加相关配置,配置一下Nacos注册中心即可;

server:
  port: 9501
spring:
  profiles:
    act

你可能感兴趣的:(java开发相关,微服务,java,microservices)