工作流程在「傳送並等待」節點上保持卡住,電子郵件未被發送

你好。
我需要幫助。
提前感謝。
(我試著用英文寫,但我是法國人。)

描述問題/錯誤/問題

工作流程在使用「發送並等待 (SMTP)」節點發送電子郵件之前停止。沒有錯誤訊息,只有「等待中」。沒有郵件被發送。
我編輯了工作流程,並用「發送 (SMTP)」節點替換,一切正常。問題只出現在「發送並等待」節點上。

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

請分享你的工作流程

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

在 Grist 表格中建立一列

關於你的 n8n 設定的資訊

  • n8n 版本: 2.36.7
  • 資料庫(預設: SQLite):
  • n8n EXECUTIONS_PROCESS 設定(預設: own, main):
  • 透過以下方式執行 n8n (Docker、npm、n8n cloud、desktop app): Community Edition with Firefox
  • 作業系統: Linux Mint

嘿 @vfavrat,在等待回應期間,以下是一些可能對您有幫助的資源:

建議的資源

自動符合您的問題。

文件:

論壇:

@manishkhanna - 您之前在類似的問題上提供過協助,您能看一下嗎?

由 n8n 社群機器人自動建議。這是一個試點 - 請在此分享您的反饋。

你好 @vfavrat 歡迎!
「傳送並等待」操作只會傳送一封電郵,由第一項目建立,然後暫停整個執行。只有在您的 SMTP 伺服器接受該訊息後,它才會切換到「等待中」狀態,所以一封郵件確實已經寄出:給執行的第一個分支的第一列。n8n 從上到下逐個執行分支,所以通常是「dir pub」。其他所有內容(「webm」分支、其他列和 Grist)都在等待,直到有人點擊該封電郵中的按鈕。純「傳送」每項目傳送一封電郵,永不暫停,這就是它能正常運作的原因。

若要為每個網站取得一封包含其自身按鈕的電郵,請將「傳送並等待」、「編輯欄位」和 Grist 移到子工作流程中,該工作流程從「由另一個工作流程執行」觸發器開始(輸入資料模式:接受所有資料)。在主工作流程中,用設定為「為每項目執行一次」的「執行子工作流程」節點取代它們,並在「選項」下關閉「等待子工作流程完成」。每個網站隨後會取得自己的執行,等待自己的答案。

另外,「限制等待時間」日期 (2026-10-01T00:00:00) 已經過期,所以新執行會在大約一分鐘後自動繼續,無需任何人點擊。而「webm」節點已釘選(紫色釘選圖示):在手動測試中,n8n 會返回釘選的項目而不是執行它,因此不會從該處傳送任何內容。

嗨 @vfavrat,你的 webm 節點也設定了「發生錯誤時繼續」。SMTP 失敗可能會作為輸出資料顯示,而不是停止工作流程。

在另一個工作流程中測試一份副本:手動觸發 → 傳送並等待,使用相同的 SMTP 認證、你自己的收件人地址和簡短的固定主旨/訊息。保持 Grist 未連線。在該副本中,設定「設定」→「發生錯誤時」→「停止工作流程」,取消釘選該節點並將等待期限設定到未來。

失敗的傳送現在應該會顯示實際錯誤。如果隔離的節點達到「等待中」但沒有任何訊息到達,請檢查 SMTP 伺服器的傳遞日誌和隔離區。「等待中」表示 SMTP 傳送已完成,不表示電子郵件已到達收件匣。

@vfavrat 在你用子工作流重新建置之前,還有一件事要檢查。Send and Wait 電郵中的「核准/拒絕」按鈕會連回你的 n8n 執行個體,所以收件者只有在該位址可從外部連接時才能回應。如果 n8n 執行於你的機器上,或在沒有設定 WEBHOOK_URL 的反向代理後面,連結可能會指向 localhost 或內部連接埠。n8n 會根據其通訊協定/主機/連接埠設定來建置 Webhook URL,除非設定了 WEBHOOK_URL(文件:使用反向代理的 Webhook URL)。請將其設定為公開的 HTTPS 位址,傳送測試電郵給自己,然後從另一台裝置或網路點擊該按鈕以確認。

另外,固定資料只適用於手動的「執行工作流」執行;生產/排程執行會忽略它(文件:執行類型)。所以如果你在實際執行中看到「等待中」,那就是 Send and Wait 本身的暫停(文件:傳送電郵、等待回應)。「限制等待時間」日期(2026-10-01)已經過期了,也要更新一下。

如果 Deepankar 所述的子工作流方法修復了卡住的「等待中」狀態,請將該回覆標記為解決方案。

謝謝!