API请求节点与API响应节点

更新时间:
复制 MD 格式

在线工作流通过系统自动生成的API请求节点和API响应节点,定义在线服务的输入输出数据契约。本文为您介绍API请求节点与API响应节点的配置方法。

前提条件

  • 当前实例需购买非结构化数据-企业版及数据服务功能后,方可使用工作流功能及全量数据服务功能。

  • 已完成在线工作流的创建,详细创建步骤请参见创建及管理工作流。

使用限制

  • API请求节点和API响应节点由系统在创建在线工作流时自动生成,不支持手动新增或删除。

  • 单个在线工作流中仅支持一个API请求节点和一个API响应节点。

配置API请求节点

API请求节点为在线工作流的根节点,用于将调用方传入的请求参数注入到工作流变量上下文,供下游算子使用。

在画布中单击API请求节点,在配置面板中配置以下参数:

参数

描述

步骤名称

节点名称,默认为API请求,支持任意字符,不超过256个字符。

绑定的API

选择API数据集及其版本,可选择当前租户下所有已提交的API数据集。下方区域将展示所选API数据集的基本信息(包含名称、路径、方法、调用模式、API超时和执行超时),您可单击查看详情跳转至对应数据集查看页面,查看更多信息。

请求参数

请求参数列表中字段将从所选API数据集中同步,不支持修改。

配置完成后,下游算子可通过{api_request.<参数名>}引用API请求节点输出的变量,例如{api_request.file_url}。

配置API响应节点

API响应节点为在线工作流的叶子节点,将上游算子的输出作为HTTP响应主体。

在画布中单击API响应节点,在配置面板中配置以下参数:

参数

描述

步骤名称

节点名称,默认为API响应,支持任意字符,不超过256个字符。下方区域展示API请求节点中所选的API数据集,此处不支持修改,如需更换API,需重新新建工作流。

字段映射

字段列表将从所选API数据集的返回参数中同步,参数名称及其类型不可修改。同时,需要为每个字段选择来源。来源可选择上游节点的输出字段或不返回该字段。

当字段类型为URL时,可通过文件拷贝控制是否将该URL对应的文件从临时存储拷贝至持久化存储:开启后拷贝文件并返回拷贝后的新URL;关闭后直接返回临时存储中的原URL。仅来源为API请求节点的URL类型字段支持关闭,来源为其它算子输出字段的URL类型字段强制执行文件拷贝,不支持关闭。

查看错误码说明

单击查看错误码说明,可查看408、402、502、503错误码的响应code和含义。

重要
  • 提交工作流时若存在未配置的API响应字段,则提交失败。

  • 错误体字段(code、message、traceId)由平台运行时注入,不包含在API响应字段列表中,无需配置。

字段映射规则

API响应节点的字段映射规则由所绑定API数据集的操作类型决定。两种操作类型均不支持引用ForEach循环算子内部子算子的中间结果,可直接引用其他算子的输出结果。

  • GET:results恒定返回一行数据。上游ForEach循环算子聚合输出的数组只能作为一个字段整体返回,字段类型支持STRING、ARRAY和OBJECT,其余字段均为单值。不支持通过数组下标引用数组中的某一个元素,如需返回具有特定业务含义的元素,可在ForEach循环算子后增加排序或结果加工算子,产出对应字段后再引用。

  • List:results返回的数据行数与所选结果来源数组的元素个数一致。需先选择结果来源,即需要展开为多行的主数组,可选范围为当前API响应节点在画布上所有上游可达算子输出的ARRAY类型字段。选择完成后,通过数组字段名称[*].字段名称引用该数组中的字段,数组的每个元素展开为一行数据;引用的字段为单值时,所有数据行均返回相同的值。切换结果来源后,原先引用其他数组的字段映射需重新修改。

目标参数类型与映射表达式的对应关系如下。

目标参数类型

映射表达式

说明

适用操作类型

标量类型,如STRING、INTEGER

数组字段名称[*].字段名称

数组的每个元素展开为一行数据。

List

ARRAY<OBJECT>

数组字段名称

数组整体作为该字段的值,不展开。

GET、List

ARRAY<STRING>、ARRAY<INTEGER>

数组字段名称[*].字段名称

取数组中每个元素的指定字段值组成数组。

GET、List

单值类型

算子名称.字段名称

直接作为该字段的值,List操作类型下所有数据行均返回相同的值。

GET、List

映射变更同步规则

当绑定的API数据集修改并提交后,已绑定的在线工作流将按以下规则同步参数变更。

变更场景

处理策略

新增返回参数

响应字段列表新增一行,来源为空;工作流状态由已提交变为草稿,需重新提交。

删除返回参数

响应字段列表删除该行;如该行的来源原本非空,系统提示该字段已从契约删除,本节点不再输出该字段。

修改参数名称

同步重命名。若API请求节点中该参数已被其他节点引用,系统提示上游参数名称变更,请复查下游节点。

修改参数类型

同步变更。若下游节点参数类型不兼容,系统提示错误。

修改取值路径

仅同步响应字段列表中参数名称列的展示表达式,不影响工作流状态。

异步调用模式说明

API响应节点的字段映射始终基于API数据集中定义的返回参数,与调用模式无关。异步调用的状态查询、任务拉取等能力由数据服务网关统一提供,无需在工作流画布中配置。

当绑定的API数据集调用模式为异步调用时,调用方需通过GetJobStatus接口轮询任务结果,异步调用流程说明请参见通过直连数据源模式创建API(查询类型)。