类型

以下类型可用于API方法。

传统上,流配置一直表示为节点对象的平面数组。

从 Node-RED 0.13 开始,添加了一个 API,允许单独维护流(又称选项卡)。这些 API 使用更丰富的格式来配置流。未来我们将更新主流配置以使用这种更丰富的格式,但目前两种格式必须共存。

节点

节点表示流中单个节点的配置。

{
  "id": "123",
  "type": "inject",
  "x": 0,
  "y": 0,
  "z": "456",
  "wires": [ ... ]
}
字段 描述
ID 节点的唯一 ID
类型 节点的类型
x,y 绘制流时节点的 x/y 坐标
z 节点所属的流或子流
连线 节点输出连接到的连线
* 由特定类型定义的其他字段

如果节点是配置节点,则它不能具有xywires属性。

子流

子流节点表示子流的配置。

{
  "id": "6115be82.9eea4",
  "type": "subflow",
  "name": "Subflow 1",
  "info": "",
  "in": [{
    "x": 60,
    "y": 40,
    "wires": [{
      "id": "1830cc4e.e7cf34"
    }]
  }],
  "out": [{
    "x": 320,
    "y": 40,
    "wires": [{
      "id": "1830cc4e.e7cf34",
      "port": 0
    }]
  }],
  "configs": [ ... ],
  "nodes": [ ... ]
}

完整的流配置

完整的流配置表示运行时中所有活动的流。它表示为节点对象的平面数组。这是/flows API 使用并由编辑器导入/导出的主要流格式。

[
  {
    "id": "1234",
    "type": "inject"
  },
  {
    "id": "5678",
    "type": "debug"
  }
]

自 0.15.0 起,如果Node-RED-API-Version头设置为v2,则/flows API 支持新格式。此格式提供上述节点数组,并包含流的可选修订标识符。

{
    "rev": "abc-123",
    "flows": [
      {
        "id": "1234",
        "type": "inject"
      },
      {
        "id": "5678",
        "type": "debug"
      }
    ]
}

单流配置

单流配置表示在编辑器中显示为选项卡的内容。

{
  "id": "1234",
  "label": "Sheet1",
  "nodes": [ ... ],
  "configs": [ ... ],
  "subflows": [ ... ]
}
字段 描述
ID 流的唯一 ID
标签 流的标签
节点 流中节点的数组
配置 流中配置的数组
子流 流中子流的数组 - 仅在表示全局流配置时使用

节点模块

节点模块表示由 npm 包提供的节点集集合。

{
  "name": "node-module-name",
  "version": "0.0.6",
  "nodes": [ ... ]
}
字段 描述
名称 模块的名称 - 在其package.json中定义
版本 模块的版本 - 在其package.json中定义
节点 此模块提供的节点集对象的数组

节点集

节点集表示节点模块中单个文件提供的类型集合。它们对应于模块package.jsonnode-red.nodes属性中的条目。

{
  "id": "node-module-name/node-set-name",
  "name": "node-set-name",
  "types": [ ... ],
  "enabled": true,
  "module": "node-module-name",
  "version": "0.0.6"
}
字段 描述
ID 集合的 ID - module/name
名称 集合的名称 - 在模块的package.json中定义
类型 此集合提供的节点类型的字符串数组
已启用 此集合当前是否已启用
模块 提供集合的模块名称。node-red值表示节点是从复制文件中加载的,而不是从 npm 模块加载的。