文件節點
本頁目錄

工作流程輸出

宣告工作流程回傳的業務結果,與節點日誌分開儲存。

工作流程輸出節點(Outputs)定義工作流程成功後回傳給呼叫方的值。程式碼或應用操作回傳的值,在對應到工作流程介面之前,都只是節點結果。

定義欄位與來源

一個工作流程最多有一個工作流程輸出節點。透過 config.outputDefs 定義具名欄位,透過 node.add.inputs 或 input.set 為各欄位綁定來源。

{
  "op": "node.add", "as": "outputs", "type": "outputs", "name": "Workflow result",
  "config": {
    "outputDefs": { "message": { "schema": { "type": "string" }, "nullable": false } }
  },
  "inputs": { "message": { "kind": "output", "node": "$greet", "port": "message" } }
}

這裡的 $greet 引用同一批修改中較早建立的程式碼節點。還需要單獨連線到工作流程輸出節點的執行路徑。輸出定義沒有預設值。

執行行為

工作流程輸出節點是執行路徑的終點。它按一般匯合規則等待前驅節點,再從所選路徑計算宣告的欄位。它沒有下游執行連線,也沒有供下游讀取的資料連接埠。

開始節點提供姓名,固定值節點提供前綴,程式碼節點組合兩者,工作流程輸出節點宣告最終結果。

開始節點提供姓名,固定值節點提供前綴,程式碼節點組合兩者,工作流程輸出節點宣告最終結果。
輸入
{"name":"Ada"}
預期結果
{"message":"Hello, Ada!"}
執行前準備
匯入或執行此案例需要 Open Flow 服務;預覽本身可離線使用。
下載工作流程

成功結果與節點日誌分開保留,呼叫工作流程節點接收的就是這些業務輸出。執行一個未定義欄位的工作流程輸出節點,會得到空物件;沒有工作流程輸出節點的工作流程,則不宣告業務結果。

HTTP 回應

Webhook 可以在整次執行成功後,將工作流程輸出作為回應回傳。這與 Webhook 回應節點不同,後者可以提前回應,讓執行繼續執行。如果工作流程輸出節點被跳過,就無法提供動態的工作流程輸出 HTTP 回應。

資料來源

搜尋