開發與網路

Webhook 網路鉤子是什麼?有事對方主動打電話給你

Webhook 網路鉤子,又稱即時觸發器,是一種反向的主動通知機制。你先把一個網址告訴對方,當特定事件發生時,對方會主動把資料以 HTTP 請求推送到這個網址,觸發你的程式或工作流執行,不需要你一直去問有沒有新消息。
Webhook 網路鉤子是什麼?有事對方主動打電話給你:文章重點卡

Webhook 網路鉤子是什麼?有事對方主動打電話給你

你的自動化流程要在有人填完表單的當下就開始跑,而不是每分鐘去問一次有沒有新資料。

這件事就是 Webhook 在做的。它是事件驅動思維的入門磚,也是自動化流程的骨架。

你將學到什麼

定義

事件發生時,由第三方系統主動把資料推送到你指定網址的通知機制。

白話比喻

不用一直打電話問「到了沒」,對方到了會自己打給你。

跟誰容易搞混

常跟定時排程與 API 混淆。誰主動、什麼時候發生,是關鍵差別。

定義

Webhook 是一種反向的主動通知機制。當事件發生時,第三方系統會主動發送 HTTP 請求到你指定的網址,通知你的 AI 或工作流:有新資料了,快處理。

運作流程有六步:設定 Webhook 網址、事件發生、對方主動發送請求、你的伺服器接收、驗證來源並處理資料、回傳 2xx 狀態碼確認收到。

白話比喻

傳統輪詢像是你每分鐘打一次電話問「有新消息嗎」,很累、很浪費資源,而且還是有延遲。

Webhook 是你把電話號碼留給對方,說「有事你打給我」。有事就通知,沒事就安靜,效率高很多。

跟相近名詞的差別

比較點傳統輪詢(Polling)Webhook
誰發起你主動去問對方主動通知你
效率低,一直輪詢很浪費資源高,事件發生才通知
即時性較慢,有間隔延遲即時,秒級觸發
資源消耗高,頻繁請求低,攤平為零
適合場景資料量小、變動不頻繁即時通知、事件驅動

API 的差別在方向:呼叫 API 是你去拿,Webhook 是對方送來。詳細比較可看 即時推播與定時排程的差別

實際用例

常見的觸發事件有五類:表單提交、即時訊息、電商訂單、金流付款成功或失敗、檔案新增或更新、以及系統監控告警。

你需要準備的是一個可公開存取的 HTTPS 網址,能接收 POST 請求並解析 JSON,驗證來源,執行事件邏輯,最後回傳 2xx 狀態碼。

安全性上有三件事一定要做:驗證簽章或 Token 確認請求來自可信的第三方、全程使用 HTTPS 加密傳輸、檢查時間戳或唯一 ID 避免同一事件被重複處理。

Webhook 的優點很直接:即時性高、不需要頻繁輪詢節省資源、適合高流量與事件驅動的系統,發送方與接收方也可以各自獨立發展。

常見誤解最容易踩的坑是沒有做重複處理防護。對方可能因為逾時而重試,同一個事件被送兩次,於是訂單被建立兩筆。用唯一 ID 檢查、確保你的接收端可以被重複呼叫而不出錯。
本文源起本文內容出自酒Ann 的「AI 實戰陪跑班」課程教材,由酒Ann 編寫成彙編條目。想系統性搞懂 AI 名詞,歡迎追蹤 酒Ann 的 Facebook

延伸學習

把這篇文章分享給需要的人FacebookLINEThreadsX

常見問答

Webhook 跟 API 差在哪?
方向相反。呼叫 API 是你主動去要資料,Webhook 是對方在事件發生時主動推給你。很多服務兩者都提供。
收到通知後要回什麼?
要回 2xx 狀態碼表示收到,對方才知道推送成功。沒有正確回應,多數服務會判定失敗並重試。
Webhook 安全嗎?
必須自己把關。一定要驗證簽章或 Token 確認來源合法、使用 HTTPS 加密傳輸,並用時間戳或唯一 ID 防止同一事件被重複處理。