• swagger部署和dubbo集成(一)dubbo swagger接入


    参考文档

    swagger ui 源码地址 https://github.com/swagger-api/swagger-ui ,swagger ui由nodejs开发,可以根据项目要求让前端人员进行二次开发

    swagger dubbo集成参考文档:https://github.com/Sayi/swagger-dubbo

    swagger dubbo引入mock 参考文档:https://blog.csdn.net/gloomy_114/article/details/73500818

    Swagger围绕着OpenAPI规范,提供了一套设计、构建、文档化rest api的开源工具。

    swagger-dubbo主要作用是swagger式的文档化+rest风格的HTTP模拟测试。

    • 通过swagger阅读接口文档
    • 开发人员可以用它来自测服务接口,也可以用它来模拟别人的服务接口返回值
    • 测试可以用它来验证接口的正确性,基于HTTP进行接口测试

    swagger-dubbo从某些方面提高了内部开发测试的效率,注意的是,rest服务不适合对外(前端)提供,务必在服务端或者测试内部使用

    Maven

    <dependency>

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

    swagger集成

    一. 使用注解 @EnableDubboSwagger开启dubbo的swagger文档。

    package com.deepoove.swagger.dubbo.example;
     
    import org.springframework.context.annotation.Configuration;
    import com.deepoove.swagger.dubbo.annotations.EnableDubboSwagger;
     
    @Configuration
    @EnableDubboSwagger
    public class SwaggerDubboConfig {
     
    }
     
    二. 在spring的*-servlet.xml配置中,开启属性占位符的配置,开启Configuration注解,声明SwaggerDubboConfig。
    <mvc:annotation-driven/>
    <context:annotation-config />
    <bean class="com.wt.swagger.dubbo.config.SwaggerDubboConfig" />
    <context:property-placeholder />
     
    三.配置跨域支持
    <!-- 跨域支持,Spring4.3.10+,低版本请设置拦截器开启跨域 -->
    <mvc:cors>
      <mvc:mapping path="/swagger-dubbo/**" allowed-origins="*" />
    </mvc:cors>
     

    四.配置项修改

    swagger-dubbo默认无需任何配置,但是也提供了一些可选项。我们这里强制大家都需要把配置给添加进去。

    如果是没有接入apollo配置中心,则在新增文件swagger-dubbo.properties,加载配置文件,并且在antx配置文件中添加相应的配置项。

     <context:property-placeholder location="classpath*:swagger-dubbo.properties" />

    配置项说明:
    #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.wt
    #dubbo服务artifactId
    swagger.dubbo.application.artifactId = payment-service
     
    #rpc zk调用 or 本地调用
    swagger.dubbo.cluster = rpc
     
    #是否启用swagger-dubbo,默认为true,如果是生产环境就设置为false
    swagger.dubbo.enable = true
     

    五.备注

    以上配置步骤,都是基于项目中已经引入了springmvc相关依赖为前提,如果项目中没有则需要自行加入。

    集成已经完毕,启动web容器,浏览器访问 http://ip:port/context/swagger-dubbo/api-docs查看文档。

    这里已payment为例:http://120.26.205.32:9023/payment/swagger-dubbo/api-docs

    swagger-ui查看文档

    swagger-ui访问地址如下:http://101.37.117.177:8080/static/#/

  • 相关阅读:
    SVN与TortoiseSVN实战:标签与分支
    IOS性能调优系列:使用Zombies动态分析内存中的僵尸对象
    IOS性能调优系列:使用Allocation动态分析内存使用情况
    IOS性能调优系列:使用Instruments动态分析内存泄漏
    IOS性能调优系列:Analyze静态分析
    2014年个人知乎收藏夹整理
    IOS开发环境更换后重新制作Provisioning Profile证书详解
    使用VS2010编译MongoDB C++驱动详解
    ACE服务端编程1:使用VS2010编译ACE6.0及从ACE5.6升级的注意事项
    std::string在多字节字符集环境下substr的实现方法
  • 原文地址:https://www.cnblogs.com/nuonuozhou/p/9479850.html
Copyright © 2020-2023  润新知