更新时间:2024-08-05 GMT+08:00

API编排典型配置

API编排的典型使用场景如下:

约束与限制

  • 仅3.0.6及以上版本的数据服务专享版集群支持API编排。
  • API工作流发布前,需确保其中的普通API均已处于已发布状态。

开发API工作流1:对返回消息进行映射或格式转换

某API默认返回的是JSON数据,现需要将API调用结果转换为EXCEL格式。

  1. 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。
  2. DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。
  1. 在左侧导航栏选择服务版本(例如:专享版),进入总览页。
  2. 进入开发API > > API编排页面,单击新建,进入API编排页面。
    图1 进入API编排页面

  3. 拖拽“入口API”算子到画布,单击画布上的算子打开配置面板,配置入口API信息。
    图2 配置入口API算子

  4. 在API目录找到需要转换的普通API并拖拽到画布,挂载到入口API下。单击画布上的普通API打开配置面板,复制节点编码例如:NormalApi_5274d。
    图3 复制节点编码

  5. 拖拽“输出处理”算子到画布,挂载到普通API下。单击画布上的输出处理算子打开配置面板,配置输出处理算子:
    • 添加结果集映射。节点映射表达式取普通API的结果,如“${NormalApi_5274d|payload}”,结果集名称按照实际取值,此处以销售记录Sales records为例进行配置。
    • 格式转换选择返回格式为EXCEL。
    图4 配置输出处理算子

  6. 保存API工作量,然后调试并发布到集群。则后续调用者就可以通过调用API工作流中的入口API,实现普通API取数结果保存在EXCEL文件中。

开发API工作流2:数据请求依赖多个数据API

在电子商务平台的场景中,某部门需要根据用户所在地区的不同,提供不同的信息和服务:如果用户位于area1地区,系统将提供供应商信息Supplier Information和销售评级数据Sales Rating;如果用户位于其他地区,系统则会返回零售商信息Retailer Information。

当前已有地区信息API是AreaInformation、供应商信息API是SupplierInformation、销售评级API是SalesRating、零售商信息API是RetailerInformation,则您可以参考后续步骤进行API工作流编排。

  1. 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。
  2. DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。
  1. 在左侧导航栏选择服务版本(例如:专享版),进入总览页。
  2. 进入开发API > > API编排页面,单击新建,进入API编排页面。
    图5 进入API编排页面

  3. 拖拽“入口API”算子到画布,单击画布上的算子打开配置面板,配置入口API信息。
    图6 配置入口API算子

  4. 在API目录找到地区信息AreaInformation API并拖拽到画布,挂载到入口API下。单击画布上的普通API打开配置面板,复制节点编码例如:NormalApi_ff8bd。
    图7 复制AreaInformation节点编码

  5. 拖拽“条件分支”算子到画布,挂载到AreaInformation API下,并在条件分支下挂载并行处理算子和零售商信息RetailerInformation API两个分支。其中零售商信息RetailerInformation普通API的节点编码为NormalApi_de62d。
    单击画布上的条件分支算子打开配置面板,配置条件分支算子:
    • 并行处理分支的条件类型配置为“满足条件时”,表达式配置为“${NormalApi_ff8bd|payload.data[0].area}”,该表达式含义是获取AreaInformation API的结果集内的第1行、对应列名为area的字段值。此处配置为如果该值等于“area1”,就执行并行处理分支。
    • 零售商信息RetailerInformation分支的条件类型配置为“不满足其他条件时”,表示如果不满足并行处理分支的条件,则执行零售商信息RetailerInformation分支。
    图8 配置条件分支算子

  6. 在API目录找到供应商信息SupplierInformation API和销售评级SalesRating API并拖拽到画布,挂载到并行处理算子下。其中供应商信息SupplierInformation和销售评级SalesRating两个普通API的节点编码分别为NormalApi_3ad5c、NormalApi_01e7e。
    单击画布上的并行处理算子打开配置面板,可以配置失败策略及分支超时时间(此处无需特殊配置,报错默认即可)。当并行处理分支被执行时,SupplierInformation和SalesRating两个分支会被同时调度。
    图9 配置并行处理算子

  7. 拖拽“输出处理”算子到画布,挂载到3个普通API算子下。单击画布上的输出处理算子打开配置面板,添加结果集映射。
    为能够输出3个普通API算子的结果,需要配置3条映射记录。节点映射表达式取普通API的结果,如“${NormalApi_3ad5c|payload}”、“${NormalApi_01e7e|payload}”、“${NormalApi_de62d|payload}”,结果集名称按照实际取值。
    图10 配置输出处理算子

  8. 保存API工作量,然后调试并发布到集群。则后续调用者就可以通过调用API工作流中的入口API,实现根据客户所在地区的不同,返回不同的信息。

相关操作

  • 编辑API工作流:在API工作流列表页面,单击对应工作流操作栏中的“编辑”,即可进入API工作流编排页面,重新进行工作流编排或修改。
  • 查看API工作流授权:在API工作流列表页面,单击对应工作流操作栏中的“查看授权”,即可进入API完整信息界面,并对工作流进行授权。

    注意,当入口API的安全认证方式为APP认证或IAM认证时,在调用API工作流前需要完成创建应用和将API授权给应用。工作流授权方式与API授权方式基本一致,可参考授权API调用申请API授权

  • 调试API工作流:在API工作流列表页面,单击对应工作流操作栏中的“更多 > 调试”,即可进入API工作流调试页面。

    在添加请求参数后,单击“开始测试”,右侧返回结果回显区域打印API调用的Response信息。调试流程与API调试流程基本一致,可参考调试API

  • 发布API工作流:在API工作流列表页面,单击对应工作流操作栏中的“更多 > 发布”,即可弹出API工作流发布窗口。

    API工作流需要发布后才能对外提供服务。发布流程与API发布流程基本一致,可参考发布API

  • 下线/删除API工作流:在API工作流列表页面,单击对应工作流操作栏中的“更多 > 下线”,即可弹出API工作流下线窗口;选择API工作流后,单击对应工作流操作栏上方的“删除”,即可弹出API工作流删除窗口。

    已发布的API工作流因为其他原因需要停止对外提供服务,可以从相关环境中下线,但需注意下线API工作流不会保留原有的授权信息。下线后的API工作流如果确认不再提供服务,可以进行删除,请注意删除操作无法撤销。下线/删除流程与API下线/删除流程基本一致,可参考下线/删除API

  • 停用/恢复API工作流:在API工作流列表页面,单击对应工作流操作栏中的“更多 > 停用”或“更多 > 恢复”,即可弹出API工作流停用/恢复窗口。

    已发布的API工作流需要编辑、调试时,必须将API工作流从相关环境中停用后才允许操作。停用API工作流会保留原有的授权信息,在停用期间您可以对API工作流进行编辑、调试等操作。停用后您可以通过恢复API工作流,使该API工作流继续对外提供服务。停用/恢复流程与API停用/恢复流程基本一致,可参考停用/恢复API

  • 设置API工作流可见:在API工作流列表页面,单击对应工作流操作栏中的“更多 > 设置可见”,即可弹出API工作流设置可见窗口。

    设置API工作流可见可以修改API工作流在服务目录中的可见范围。设置可见流程与API设置可见流程基本一致,可参考设置API可见

  • 复制API工作流:在API工作流列表页面,单击对应工作流操作栏上方的“更多 > 复制”,即可弹出API工作流复制窗口。

    复制API工作流能够得到与原API工作流配置相同的API工作流。复制流程与API复制流程基本一致,可参考复制API

  • 同步API工作流至数据地图:在API工作流列表页面,单击对应工作流操作栏上方的“更多 > 同步至数据地图”,即可进入API工作流同步页面。

    同步API工作流至数据地图能够将API工作流资产同步到数据地图组件进行查看。同步流程与API同步流程基本一致,可参考同步API到数据地图