Sayi / swagger-dubbo

:page_with_curl: Dubbo的Swagger服务文档
Apache License 2.0
331 stars 187 forks source link
dubbo http swagger

Dubbo的Swagger服务文档

swagger-dubbo

Build Status jdk11+ dubbo3.2.0+

Dubbo |ˈdʌbəʊ| 是阿里巴巴提供的分布式框架,Swagger围绕着OpenAPI规范,提供了一套设计、构建、文档化rest api的开源工具。

前提

Maven

<dependency>
  <groupId>com.deepoove</groupId>
  <artifactId>swagger-dubbo</artifactId>
  <version>3.0.0-beta</version>
</dependency>

SpringBoot

@EnableDubboSwagger开启dubbo的swagger文档。

@EnableDubboSwagger
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

参见spring-boot示例

swagger-ui查看文档

可以在任何能托管页面的容器内集成swagger-ui,配置swagger-dubbo提供的http://ip:port/context/swagger-dubbo/api-docs,可能需要跨域支持,详情参见官方文档 swagger-ui

@JKTerrific 在swagger-ui基础上开发了swagger-dubbo-ui, 解决了页面上的一些展示问题:

配置

swagger-dubbo默认无需任何配置,但是也提供了一些可选项。

配置项说明:

#http请求地址,默认为http://ip:port/h/com.XXX.XxService/method
swagger.dubbo.http=h

#dubbo 服务版本号
swagger.dubbo.application.version = 1.0
#dubbo服务groupId
swagger.dubbo.application.groupId = com.deepoove
#dubbo服务artifactId
swagger.dubbo.application.artifactId = dubbo.api

#rpc zk调用 or 本地调用
swagger.dubbo.cluster = rpc

#是否启用swagger-dubbo,默认为true
swagger.dubbo.enable = true

swagger-dubbo集成注意事项