Internal HTTP Client¶
支持通过GET,POST,或PUT方式发起HTTP请求,并支持开启缓存(以URL+请求参数生成key),以便二次查询。
配置详情¶
该算子的配置包括 General,Basic,Input/Output,Request,和 QueryConfig 的详细信息,各字段的配置如下:
General¶
名称 | 是否必须 | 描述 |
---|---|---|
Name | Yes | 算子名称 |
Description | No | 算子描述 |
Stage Library | Yes | 算子所属的库 |
Required Fields | No | 数据必须包含的字段,如果未包含指定字段,则 record 将被过滤掉 |
Preconditions | No | 数据必须满足的前提条件,如果不满足指定条件,则 record 将被过滤掉。例如:${record:value('/value') > 0} 。有关 EL 语句的使用方法,参考 Expression Language。 |
On Record Error | Yes | 对错误数据的处理方式,可选:
|
Basic¶
名称 | 是否必须 | 描述 |
---|---|---|
Enable Cache Fields | No | 选择是否开启缓存。缓存为Local缓存,数据处理速度快,任务暂停、重启或者重试时后缓存数据会丢失。 |
Expire Rule | No | 开启缓存时,选择缓存的失效时间 |
Quality Filter | No | 根据数据质量过滤处理数据,只有符合质量条件的 record 才会进行此次处理 |
Input/Output¶
名称 | 是否必须 | 描述 |
---|---|---|
Input Point | Yes | 数据输入点,格式为:{模型标识}::{测点标识} |
Output Point | Yes | 数据输出点,格式为:{模型标识}::{测点标识} |
Request¶
名称 | 是否必须 | 描述 |
---|---|---|
Request Method | Yes | 选择请求方式,可选 Get,Post,或Put |
Request URL | Yes | 输入请求的URL |
Param Generate: Position | Yes | 选择输入参数的位置,可选 URL Path,URL Query,Request Body,或 Header |
Param Generate: Param Key | Yes | 输入请求参数的名称 |
Param Generate: URLParam Type | Yes | 选择参数类型,可选 By Field 或 By Input。若选择 byField,现不支持 List/Map 等复杂格式,且若传参数值类型会被强转成 String。 |
Param Generate: Param Value | Yes | 输入或选择参数的值 |
Access Key | Yes | 输入发起请求的应用的Access Key(通过 EnOS 管理控制台注册应用生成),用于请求鉴权 |
Secret Key | Yes | 输入与Access Key对应的Secret Key |
QueryConfig¶
名称 | 是否必须 | 描述 |
---|---|---|
Parallel Number | Yes | 选择请求并发数的方式,可根据API服务的限制,选择System Default或User Defined:
|
Enable Retry | No | 指定是否在请求失败时重试,并且在 Retry Attempts 输入框中,设置失败重试次数。 |
Cache Filter | No | 当缓存开启时,指定缓存的过滤条件。默认值为 true,支持Aviator表达式,示例:
|
输出结果¶
该算子的输出结果包含在 attr
结构体中。各字段的描述如下:
名称 | 数据类型 | 描述 |
---|---|---|
hasData | Boolean | 表示请求是否成功。true:请求成功,返回 responose 和 cacheKey 字段;false:请求失败,仅返回 cacheKey 字段 |
checkSuccess | Boolean | 标识返回结果是否符合 Cache Filter 的表达式 |
response | Object | 如果请求成功,显示相应请求的(字符串)返回值,并在 returnBy 字段中注明返回结果是来自Redis(缓存数据)还是来自HTTP请求 |
cacheKey | String | 由Request URL + Param Generate配置,拼接出的请求URL |