XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEWorkflow

【WinUI】XFE基于windows的工作流

公开
关注 0 Fork 0 Star 0
UTF-8

读取对象字段并通过连线使用

“变量与数据 → 读取对象字段”(core.object.get)可读取联系人 ID、名称或任意 JSON 对象字段。字段路径填在读取节点的属性中,输出通过数据连线传给后续节点,日志和消息正文不用填写表达式。

可导入模板

导入后默认关闭自动调度,但可以手动运行。企业微信返回的是已加载的缓存,completeRoster=false,不保证完整通讯录;名称可能为空。

查看模板中的连线

选中“逐个遍历联系人”,在属性里点击“编辑子图:body”。每轮先执行“当前联系人”,然后分别读取 id 与 displayName。每个字段经过“转换为文本”节点,提供明确的文本输出,便于继续连接插件的文本参数。

flowchart LR
    C[当前联系人] -.->|item → value| I[读取字段 id]
    C -.->|item → value| N[读取字段 displayName]
    I -.->|value| IT[转换为文本]
    N -.->|value| NT[转换为文本]
    IT -.->|value → message| IL[输出联系人 ID]
    NT -.->|value → message| NL[输出联系人名称]

图中虚线是数据连接;模板的执行线按顺序运行两个字段读取、转换和日志节点。两个日志节点的固定参数均为空,消息完全取自数据连线。每位联系人只写两条日志,日志来源标明 ID 或名称;不添加内容前缀,不改写名称、空白、换行或表情。循环体的 result 仍返回完整原始联系人,主图返回全部迭代结果。

需要将 ID 或名称用于其他操作时,把对应“转换为文本”的 value 输出连到目标节点的文本输入。需要输出整个对象时,可以把“当前联系人”的 item 直接连接“输出日志”的 message。需要检查数值字段时,选择“转换为数字”;数据类型不一致的具体端口需要显式转换。

输入与输出

端口 方向 类型 含义
value 输入 通用 接收对象或数组;JSON 文本需先用转换节点解析
path 输入 文本 字段路径,默认 id,可直接在节点属性中填写
value 输出 通用 字段原始值的副本,保留类型与内容
found 输出 布尔 字段是否存在,可连接系统“条件分支”

value 输出可以直接连接接受通用值的输入;连接文本、数字、布尔等具体类型输入前,使用对应转换节点。所有端口都有名称、类型和用途的悬停介绍,属性在参数下方显示连接来源和去向。

字段存在且值为 null 时,found=true、value=null;路径不存在时,found=false、value=null。可把 found 连到系统条件的 left,选择 truthy,只在 true 分支使用字段。每个分支只能读取该分支之前已执行节点的输出。

字段路径

字段名区分大小写,数组序号从 0 开始:

路径 示例用途
id 顶层联系人 ID,不把长字符串 ID 转成数字
displayName 顶层联系人名称
profile.name 嵌套对象字段
items.0.name 数组第一个对象的名称
0 输入本身为数组时的第一项
/a.b JSON Pointer,读取名字本身包含点号的 a.b 字段
/字段~1名 读取 字段/名;~1 表示 /,~0 表示 ~
空字符串 返回整个输入对象或数组的副本

缺失字段、数组越界或经过空值的路径返回 found=false。输入是空值、数字、布尔或未解析的 JSON 文本时明确报错。读取不修改源对象,也不会把原始字段中看起来像绑定的内容当作表达式执行。

中文、表情与 JSON 显示

对象和数组的日志、调试数据、运行记录与参数 JSON,以及导出的工作流和 JSON 日志,使用可读的 Unicode 字符,例如 {"displayName":"李四 👨‍👩‍👧‍👦👍🏽🇨🇳"}。中文、补充平面字符、组合表情、肤色和旗帜保留完整字符序列,不显示为 \uXXXX 或分开的代理对。

引号、反斜杠、换行等仍按 JSON 语法转义,文件保持可解析。用户原文本来包含的字面量 \u4e2d 不会变成“中”;文本值直接写入日志时仍保持原文。托管凭据在可读 JSON 中继续脱敏。

选中读取或使用字段的节点按 F9 设置断点,F5 运行/继续,F10 越过,F11 进入循环体。底部调试页查看当前参数及已执行节点输出,无需额外记录流程开始、结束或遍历日志。调试说明。