服务契约指基于OpenAPI规范的微服务接口描述,是微服务系统运行和治理的基础。您无需在应用中引入依赖,直接部署后,便可以通过服务契约在线查看微服务接口、路径等API信息,不但能查询提供的服务,还能方便的使用服务测试等功能。

背景信息

服务契约包含了以下3个主要功能:

  • API查询

    查看服务提供者或消费者的重要API信息,包括方法名、参数列表、返回类型。Spring Cloud服务还支持查看请求方法、请求路径、所属类的类名等信息。

  • Swagger注解解析

    作为OpenAPI规范的主要制定者,Swagger虽并非是唯一支持OpenAPI的工具,但基本也属于一种事实标准。

    服务契约支持Swagger注解解析,并在控制台的服务契约页面进行展示:

    • Swagger2的注解解析(例如@ApiOperation,@ApiParam,@ApiImplicitParam),解析value值在描述列展示。
    • OpenAPI3的注解解析(例如@Operation,@Parameter),解析description值在描述列展示。
  • 服务测试的前置条件

    服务测试功能需要基于通过服务契约收集的服务的API信息,对服务接口或路径进行测试。

操作步骤

  1. 登录EDAS控制台
  2. 在左侧导航栏选择微服务治理 > Spring Cloud > 服务查询
  3. 在顶部菜单栏选择地域,在服务查询下方选择命名空间,然后单击具体服务名。
  4. 服务详情页面的元数据区域查看接口元数据中的服务的API信息。

    当使用Swagger注解时,会在描述列显示相应信息。

    服务详情-服务契约