Swagger Webflux
上手 Swagger Webflux(v2.10.5)
Swagger [2.10+)支持 Webflux。之前为了使用支持Webflux的Swagger,使用了快照版3.0.0-SNAPSHOT,从生产来讲还是不安全的。
一、Webflux
- 引入依赖
<properties>
<swagger.version>2.10.5</swagger.version>
</properties> <dependencies>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-spring-webflux</artifactId>
<version>${swagger.version}</version>
</dependency>
</dependencies>添加注解
@EnableSwagger2WebFlux配置文件
二、WebMVC
- 引入依赖
<properties>
<swagger.version>2.10.5</swagger.version>
</properties> <dependencies>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>${swagger.version}</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-spring-webmvc</artifactId>
<version>${swagger.version}</version>
</dependency>
</dependencies>添加注解
@EnableSwagger2WebMvc配置文件
三、相关源码
- WebMvc,可参考 mall-user模块
- Webflux,可参考 mall-gateway模块
支持聚合 API,也就是 gateway 里边聚合了user、order等子服务的swagger,子服务无需依赖 springfox-swagger-ui,更简洁