背景
组合应用用于将多个非组合接口得接口按照一定规约绑定到一个组合接口下面场景。比如下面得场景:
公司A 与 公司B、C、D有合作, 其中公司B、C、D都有自己得图像识别接口,但是各个公司的接收的参数是不一样的。现在公司A想要对外发布一个图像识别的接口,对外的接口参数是固定不变的,组合应用就是为应对这种场景产生的。我们需要先定义一个A组合接口(A公司对外开放的接口),然后定义B、C、D三个非组合接口的实例接口,最后新建一个应用绑定A接口,在A接口下面新建B、C、D三个实例接口进行参数映射即可。
配置及使用
一 、新建一个组合接口
功能入口: 接口平台
> 服务注册
> 新建
1.1 新建组合服务
如上图所示,建组合接口前必须新建组合服务, 组合服务和普通的服务的唯一区别在于 服务类别
选择组合接口。其他保持一致。
1.2 新建组合接口
如上图所示,组合接口与普通的实例接口的唯一区别是不用输入接口地址,因为组合接口只是一个逻辑概念。实际调用是调用它绑定的实例接口。
1.3 为组合接口定义文档参数
为组合接口创建一个文档参数,用户只关心组合接口的文档参数,调用时候只会传递文档参数,参数映射的过程由接口平台后续步骤完成。 比如这里我们为其创建一个文档参数:
二 、新建一个组合应用
功能入口: 接口平台
> 应用类型定义
> 新建
2.1 新建组合应用
如上图所示需要注意如下参数:
- 应用大类: 用户自定义的独立值集,用于快速检索
- 应用小类: 用户自定义的独立值集与应用大类是父子值集,用于快速检索。
- 开放接口: LOV,用于选择我们定义好了的组合接口。
- 编排策略: 若轮询,则对组合接口的调用会变成轮询调用组合接口下面的实例接口。若权重,则会按照默认顺序调用实例接口,超出权重则调用下一个实例接口。
- 快速失败: 默认开启。若调用失败,不会尝试调用其他实例接口,抛出异常。
2.2 注册一个实例接口
实例接口的注册其实就是接口平台
> 服务注册
> 新建
除了组合应用类型注入的其他接口的注入。这里不在赘述。注册好后我们为其定义文档参数方便后面演示
2.3 为组合应用绑定实例接口
如上图所示,组合应用实例需要注意如下参数:
- 实例接口名称: LOV,用于选择一个实例接口,就是上面步骤2注册的实例接口。
- 刷新参数配置:点击会将实际接口的文档参数刷到参数映射表,也就是下面列表里的实例参数将会被展示出来,请确保当前实例绑定的接口有配置文档参数。
- 实例参数: 实例接口的文档参数。
- 映射参数: 组合接口里面的文档参数,这里是将实例参数向组合接口的文档参数上进行映射。
点击刷新参数配置
后,如下图所示:
然后我们可以编辑为该参数选择一个对应的组合接口参数。
注意: 通过参数刷新目前不支持body参数映射
三 、参数映射
参数映射可以选择通过映射类
或则刷新参数配置
按钮手动映射两种方式。其中点击映射类
,弹出的代码模板有详细描述怎么使用,这里不在赘述。刷新参数配置
在上面也有描述。
四 、组合接口的调用
调用的时候只需要通过组合接口的namespace、serverCode、interfaceCode由SDK调用 或则 通过组合接口的发布地址调用。调用与普通的接口调用没有任何区别,详情参考本目录接口配置以及调用章节。