Skip to content

远程数据源 ​

远程数据源为表单中的下拉和自动完成字段提供登记式 HTTP 数据源。只有登记并启用的数据源才能由服务端代理调用,避免表单直接访问任意 URL。

配置 ​

页面入口为「工作流引擎 → 运维与集成 → 远程数据源」。

配置说明
名称 / 备注数据源名称唯一,用于管理和字段选择
方法与 URL支持 GET / POST,地址必须是 HTTP(S)
请求头静态 Header 使用 AES-256-GCM 加密保存;回显时脱敏,传 ****** 表示沿用旧值
列表路径从响应 JSON 中提取数组;留空表示响应根是数组
值字段 / 显示字段映射为表单选项的 value 和 label
关键词参数远程搜索时使用的参数名;留空表示不支持远程搜索
状态启用或禁用

列表支持测试拉取选项;表单字段配置只能选择已启用的数据源。运行时由服务端代理提供:

http
GET /api/workflows/data-sources/{id}/options
GET /api/workflows/data-sources/{id}/record

管理操作使用 workflow:datasource:list/create/update/delete 权限;两个运行时代理接口只要求登录。数据源为全局登记配置,表中不带租户字段。

所有出站请求统一经过工作流 SSRF 防护;保存时和请求时都会校验地址。联动赋值场景使用 record 读取选中项的原始记录,再按字段映射回填其它表单字段。

拉取、搜索与缓存 ​

选项和原始记录以数据源 ID、搜索词为键缓存 30 秒,缓存位于服务进程内。更新或删除数据源时清空当前进程的缓存。请求超时为 10 秒,外部非成功响应或列表路径没有取到数组时返回明确错误。

关键词不为空且配置了关键词参数时,GET 将搜索词放入查询串,POST 将其放入 JSON 请求体。选项值与标签将字符串、数值和布尔等原始值转成文本;标签为空时取值字段兜底,空值选项不返回。record 按选项值在原始列表中匹配,未找到时返回 null。

例如响应为 {"data":{"items":[{"id":42,"name":"办公采购"}]}} 时,可配置列表路径 data.items、值字段 id、显示字段 name,得到 { value: "42", label: "办公采购" }。

表单字段配置和联动规则见表单设计与运行时,出站安全见连接器。远程数据源使用自身登记的 URL 与请求头,不通过连接器调用。

Built with VitePress for local documentation preview.