文件觸發器
本頁目錄

Webhook

透過 HTTP 請求啟動工作流程,並選擇回應的內容和時機。

Webhook 將收到的 HTTP 請求作為一次執行的入口。需要將工作流程發布到能夠對外提供 Webhook 地址的部署環境。

宣告請求

選擇 HTTP 方法,並宣告請求本文欄位。公開編排介面透過 config.body 接收按名稱組織的欄位定義。

{
  "op": "node.add", "as": "webhook", "type": "webhook", "name": "Receive a ticket",
  "config": {
    "method": "POST",
    "body": { "message": { "schema": { "type": "string" }, "nullable": false } }
  }
}

請求資料透過觸發器宣告的輸出提供。讀取請求本文欄位時,從 body 輸出中按直接屬性名選擇。請求不會自動把值綁定到任意下游輸入。

選擇回應模式

  • 立即回應:省略 options.responseBody,使用已設定的即時回應。
  • 工作流程輸出:選擇 kind: "workflow-outputs",等待整次執行成功後回傳全部工作流程輸出或其中一個欄位。
  • 回應節點:選擇 kind: "webhook-response",指定一個可達節點,在它第一次成功完成時回傳回應。
POST Webhook 將宣告的 message 傳給程式碼節點;Webhook 回應節點回傳確認訊息,後續任務仍可繼續。

POST Webhook 將宣告的 message 傳給程式碼節點;Webhook 回應節點回傳確認訊息,後續任務仍可繼續。
輸入
POST 請求本文:{"message":"Please check my order"}
預期結果
HTTP 202,文字為 "Received: Please check my order",並包含 X-Workflow: ticket-intake。
執行前準備
將工作流程發布到對外提供 Webhook 地址的部署環境。
下載工作流程

動態回應限制

動態回應超時範圍為 1,000–60,000 毫秒,預設為 30,000 毫秒,排隊和等待時間也計入其中。HTTP 超時不會取消已經接收的執行。

工作流程輸出模式中,字串按文字回傳,其他 JSON 值按 JSON 回傳。選定輸出缺失或執行未成功時會回傳錯誤。狀態碼和回應標頭也可按文件規定的約束,從工作流程輸出中選擇。

切換模式時,應明確清除相應欄位。固定回應文字、狀態碼和回應標頭即使目前未生效,也可能仍保留設定。清除一個巢狀欄位,不等於清除了其他回應策略。

CORS、回應標頭限制、請求限制和對外地址設定,均以部署端規則為準。提前確認請求的用法見 Webhook 回應。

資料來源

搜尋