在 n8n 中建構可重複使用工作流程的模式

嗨各位,
隨著我的 n8n 專案越來越大,我注意到許多工作流程共享相同的邏輯,例如身份驗證、錯誤處理、資料驗證和發送通知。
現在,我發現自己在多個工作流程中複製相同的節點,這使維護變得更加困難。如果我需要更新一段邏輯,我必須在多個地方編輯它。
例如:Webhook

驗證資料

身份驗證

業務邏輯

發送通知
我正在考慮使用 Execute Workflow 將常見邏輯移至子工作流程,但我不確定這是否是最佳的長期方案。
對於管理大型 n8n 專案的人:
你如何組織可重複使用的工作流程組件?
你是否使用子工作流程來處理共享邏輯,還是偏好另一種模式?
當多個工作流程依賴同一個子工作流程時,你如何處理版本控制?

錯誤訊息是什麼(如果有的話)?

請分享你的工作流程

(選取畫布上的節點,並使用鍵盤快捷鍵 CMD+C/CTRL+C 和 CMD+V/CTRL+V 來複製和貼上工作流程。)

分享最後一個節點返回的輸出

關於你的 n8n 設定的資訊

  • n8n 版本:
  • 資料庫(預設值:SQLite):
  • n8n EXECUTIONS_PROCESS 設定(預設值:own, main):
  • n8n 執行方式(Docker、npm、n8n cloud、桌面應用程式):
  • 作業系統:

嗯,這是最好的方法,@Decoure_Ryan
與其編輯 N 個工作流程,你只需要做一次。

@Decoure_Ryan 使用執行工作流程來處理在多個工作流程中共用的邏輯,例如:

驗證
資料驗證
通知
錯誤處理

主要工作流程

執行工作流程(共用邏輯)

繼續處理

最佳實踐
讓子工作流程專注於單一責任
在工作流程之間清楚地傳遞輸入和輸出
在進行重大變更之前對共用工作流程進行版本控制
記錄共用工作流程,以便輕鬆重複使用

應該避免的做法
在許多工作流程中複製相同的節點
建立深層巢狀子工作流程,這會使除錯變得更加困難

非常感謝 @Niffzy @kjooleng 這大大釐清了何時使用「執行工作流程」