幾秒鐘測試你的 Discord Webhook。貼上網址、驗證它,再傳送一則測試訊息,確認一切正常。
Discord Webhook 是一組獨一無二的網址,讓你不必用機器人也能把訊息送到特定的 Discord 頻道。Webhook 常用於 GitHub 通知、伺服器監控警報、CI/CD 流程更新以及自訂整合。每個 Webhook 都有自己的名稱與頭像,並綁定到一個特定頻道。
貼上你的 Webhook 網址,然後點「檢查」。工具會向 Discord API 驗證該網址,並顯示 Webhook 的名稱、頭像與綁定的頻道。如果有效,你可以輸入自訂訊息並透過 Webhook 送出,確認它能正常運作。基於安全考量,你的 Webhook 網址會經由我們的伺服器轉送(瀏覽器因為 CORS 無法直接呼叫 Discord API),但絕不會被儲存或記錄。
當 Webhook 請求失敗時,Discord 會回傳一個 HTTP 狀態碼,回應內容是包含數字 code 與 message 的 JSON。你真正會遇到的是這幾種:
retry_after 欄位(單位為秒),告訴你何時重試。請照著做。content、沒有 embeds,也沒有 files。至少要有其中一項。embed.color 當成十六進位字串傳送,而不是十進位整數。傳送前把 #9B59B6 換算成 10181046。Discord 會針對每個 Webhook 與每個頻道套用速率限制,而桶子的確切大小由伺服器端決定並透過回應標頭提供,不是一個固定數字。每個成功的回應都會包含 X-RateLimit-Limit、X-RateLimit-Remaining 與 X-RateLimit-Reset-After - 讀取這些值來安排下一次請求,不要把固定速率寫死在程式碼裡。429 的回應內容也會帶上 retry_after 值(單位為秒)。對於高流量的整合(建置流程、日誌彙整),把多個事件合併成一則訊息:一次 Webhook 呼叫最多可帶 10 個嵌入內容,每個嵌入內容合計最多 6,000 個字元,通常足以把一連串事件收斂成一次請求。
Webhook 網址是一種持有即可用的憑證。任何拿到完整網址的人,都能以 Webhook 機器人的身分在你的頻道發文,不需要任何額外驗證。請把它當成密碼看待:
allowed_mentions 明確允許,否則 Discord Webhook 會忽略 @everyone 與 @here 標註。如果你不需要標註提醒,把 "parse": [] 設定上去就能全部關閉。如果你比較習慣從終端機測試,最小的酬載就是一個 content 欄位。POST 成功會回傳 HTTP 204 與空的內容;如果在網址後面加上 ?wait=true,則會回傳 HTTP 200 與新建訊息的 JSON。當你需要取回訊息 ID 時就用 ?wait=true(例如之後要透過 /webhooks/<id>/<token>/messages/<message_id> 端點編輯或刪除這則訊息)。
由 Pigona 提供技術支援 - 為 Discord 打造的免費翻譯