Node-RED flows 操作


POST /flows

转载内容 如有侵权 或 不希望被转载 可以留言或私发告诉我,我会及时处理,尊重你的权利。
原文地址[https://nodered.org/docs/api/admin/methods/post/flows/]

Set the active flow configuration.

需要权限:flows.write

Headers

标题价值
AuthorizationBearer [token]- 如果启用了身份验证
Content-typeapplication/json
Node-RED-API-Version自 0.15.0 起)正在使用的 api 版本。v1如果未设置,则默认为。
Node-RED-Deployment-Typefull, nodes,flowsreload

Node-RED-Deployment-Type头用于定义执行的部署类型。

  • full- 在新配置开始之前,所有现有节点都已停止。如果未提供标头,这是默认行为。
  • nodes- 在应用新配置之前,仅停止已修改的节点。
  • flows- 在应用新配置之前,仅停止包含修改节点的流。
  • reload- 从存储中重新加载流并重新启动所有节点(从 Node-RED 0.12.2 开始)

Arguments

请求正文的格式将取决于所使用的 Node-RED API 版本:

v1- 节点对象数组

[
  {
    "type": "tab",
    "id": "396c2376.c693dc",
    "label": "Sheet 1"
  }
]

v2- 流响应对象

rev属性(如果提供)应反映由 返回的流的修订GET /flows

{
    "rev": "abc-123",
    "flows": [
      {
        "type": "tab",
        "id": "396c2376.c693dc",
        "label": "Sheet 1"
      }
    ]
}

设置节点凭据

有两种方法可以通过此请求提供凭据。数组中的各个节点对象flows可以包含一个credentials属性,该属性包含该节点的凭据。

或者,顶级对象可以包括一个credentials属性,该属性具有各个节点的凭据,或者一个完整的加密集。

内联节点凭据:

{
    "rev": "abc-123",
    "flows": [
      {
        "type": "tab",
        "id": "396c2376.c693dc",
        "label": "Sheet 1",
        "credentials": {
            "user": "my-username",
            "pass": "my-password"
        }
      }
    ]
}

单独的节点凭据:

{
    "rev": "abc-123",
    "flows": [
      {
        "type": "tab",
        "id": "396c2376.c693dc",
        "label": "Sheet 1"
      }
    ],
    "credentials": {
        "396c2376.c693dc": {
            "user": "my-username",
            "pass": "my-password"
        }
    }
}

加密节点凭据:

{
    "rev": "abc-123",
    "flows": [
      {
        "type": "tab",
        "id": "396c2376.c693dc",
        "label": "Sheet 1"
      }
    ],
    "credentials": {
        "$": "beea417990012379ca6d4116bd1fda5bOWbwy7UnQvccxAEH1V1pSEETTfSNerYGvP4Aai6RT/DNpnjCCP/fdzildzlJhFjYcRKdO1Q="
    }
}

}

Response

状态码原因回复
200v2成功rev活动流的新特性。见下文。
204v1成功没有任何
400API 版本无效错误响应
401未经授权没有任何
409版本不匹配错误响应。见下文。

如果v1正在使用 API,则成功的请求不包含响应正文。

如果v2正在使用 API,则请求应包括rev设置为rev请求者已知的最新值的属性。如果此值与rev运行时中活动流的值匹配,则请求将成功。

如果不匹配,这表明运行时正在使用更新版本的流,并且请求被拒绝并带有409状态代码。这允许请求者解决任何差异并重新提交请求。

如果请求者希望强制部署,rev则应从请求中省略该属性。

请求成功时,响应会提供新rev值:

{
    "rev": "def-456",
}

注意:该rev属性是一个字符串,但不应对其格式做出其他假设。


文章作者: Kevin
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Kevin !
评论
  目录