Node-Red自定义流程模板(Flow)

如题所述

第1个回答  2022-07-27
Node-Red 支持导入导出 Flow(s) ,可以通过图形编辑界面导入现有 Flow(s) 或者导出现有 Flow(s) 。本文将着重介绍通过 API 的方式创建 Flow(s) ,或获取/导出 Flow(s) 。

首先我们将先介绍 API 的鉴权过程:

想要通过鉴权调用 adminAuth 的 api 之前,我们需要确定一下,是否已经正确设置了 sttings.js 中 adminAuth 对象(集成模式亦是如此)。如果我们没有设置这个对象,那么任何人都可以在未授权的情况下调用 adminAuth 的 api ,也就失去了鉴权的意义。

调用 /auth/token 的 HTTP POST 请求 用于交换用户凭据以获取访问令牌。 body 必须提供以下参数:

Request Header需要携带以下参数:

Response Body返回值:

请求事例,这里以postman为例:

添加单个 Flow ,调用 /flow 的 HTTP POST请求
注意,配置对象必须至少包含节点属性。添加时将为 Flow 分配一个新的 id 。 如果提供的 Flow 配置对象包含一个 id 字段,它将被替换,并且所有节点的 z 属性都会更新以匹配。 Flow 中的所有节点都必须具有唯一的 id 属性。 如果任何 id 已在使用中,则该请求将被拒绝。
Request Header需要携带以下参数:

Request Body参数:

Response Body

这样编辑页面就会出现以下 Flow 以及子节点:

上述方法为API的新增,下面将介绍API方式获取Flow(s)
获取单个 Flow ,调用 /flow/:id 的 HTTP GET请求
Request Header需要携带以下参数:

返回值:

Node-Red 另外提供 runtime function 方式进行数据导入,以 express 引入 Node-Red 为例,方法如下:

这里为Node-Red的内部方法,所以不需要走授权。执行结果这里不具体举例了,自己尝试一下。获取方法也是一样:

以上就是 Node-Red 自定义模板流程的全部内容了,感谢阅读,下一篇是 Node-Red 的自定义节点(Node)。
相似回答