Internal HTTP Client

支持通过GET,POST,或 PUT 方式发起 HTTP 请求,并支持开启缓存(以 URL+ 请求参数生成 key),以便二次查询。

配置详情

该算子的配置包括 GeneralBasicInput/OutputRequest,和 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

对错误数据的处理方式,可选:

  • Discard:直接丢弃
  • Send to Error:发送至错误中心
  • Stop Pipeline:停止流任务运行

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
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:

  • System Default:系统默认支持的并发数。
  • User Defined:自定义的并发数,并且在 UserDefined 输入框中,输入指定的请求并发数(若超过 Stage 配置的上限,启动任务时会报错)。
Enable Retry No 指定是否在请求失败时重试,并且在 Retry Attempts 输入框中,设置失败重试次数。
Cache Filter No

当缓存开启时,指定缓存的过滤条件。默认值为 true,支持 Aviator 表达式,示例:

  • code == 200
  • (code != 500) && (msg == "ok")

输出结果

该算子的输出结果包含在 attr 结构体中。各字段的描述如下:

名称 数据类型 描述
hasData Boolean 表示请求是否成功。true:请求成功,返回 responosecacheKey 字段;false:请求失败,仅返回 cacheKey 字段
checkSuccess Boolean 标识返回结果是否符合 Cache Filter 的表达式
response String 如果请求成功,显示相应请求的(字符串)返回值,并在 returnBy 字段中注明返回结果是来自 Cache(缓存数据)还是来自 HTTP 请求
cacheKey String 由 Request URL + Param Generate 配置,拼接出的请求 URL

输出示例

../../../_images/http_lookup_result3.png