还在为流程卡在“等人点一下”而头疼?
笔者在 N8N大学 社区里潜水时,发现很多新手都有一个共同的痛点:自动化流程跑得好好的,偏偏中间需要人工确认一下。比如:采购审批、内容发布前的二次审核、或者仅仅是等客户回复邮件后再进行下一步。

硬生生把自动化的“自动”两个字搞成了半自动。如果用 Cron 节点定时去查,不仅浪费算力,延迟还高。今天,笔者就带大家彻底解决这个痛点,聊聊异步工作流的核心——Wait 节点 (On Webhook Call)。
Wait 节点到底是个什么“黑科技”?
很多刚接触 n8n 的朋友,看到 Wait 节点一脸懵。它其实就像是给你的工作流按下了“暂停键”,但不是死等,而是把流程“挂起”到云端,腾出资源干别的事。
我们重点要讲的模式是 On Webhook Call。简单说,就是工作流流到这里时,会生成一个专属的“复活链接”。只要有人(或者系统)访问这个链接,工作流才会从这里继续往下走。
笔者打个比方:这就像你去餐厅吃饭,没座了。服务员给你个叫号器(Webhook URL),你去旁边刷手机(挂起)。号叫到了(Webhook 被触发),你再回去入座(继续执行)。
实战:用 Wait 节点实现“人工确认”
下面,笔者手把手教你搭建一个场景:当有新数据入库时,暂停流程,直到你在手机上点一下“确认”按钮,才继续发送通知。
第一步:触发与生成“复活链接”
首先,我们需要一个 Webhook 节点作为入口(比如接收飞书/钉钉的消息)。接着,拖入一个 Wait 节点。
在 Wait 节点的设置中,Wait On 选项一定要选择 Webhook Call。此时,n8N 会自动在下方生成一个 Webhook URL。复制这个 URL,这是我们流程的“复活码”。
第二步:构建“唤醒”按钮(HTML邮件)
既然要人工确认,总得给人家一个点击的地方吧?这里我们用 Email 节点(或者发送到钉钉/飞书的卡片)。在邮件正文中,我们需要嵌入一个 HTML 按钮,按钮的链接就是刚才复制的 URL。
<a href="刚才复制的WebhookURL" style="background:#007bff;color:white;padding:10px 20px;text-decoration:none;">确认通过</a>
这样,审批人收到邮件,点击按钮,就相当于访问了那个 URL,n8n 就知道:“嗯,人工确认通过了,继续跑。”
第三步:处理确认后的逻辑
Wait 节点后面连接的就是确认通过后的操作。比如更新数据库状态、通知项目组“审核已通过”等。
这里有个细节:Webhook 节点默认是 Response Mode(立即响应模式)。但在异步流程中,我们不需要它立即返回什么给浏览器,只需要它作为“唤醒器”存在。所以,连接在 Wait 后面的 Webhook 节点,通常逻辑比较简单,只是一个触发器。
避坑指南:实战中容易翻车的 2 个点
这套方案虽然好用,但笔者在实战中也踩过坑,这里分享两个细节:
1. 链接的安全性问题
n8n 生成的 Webhook URL 默认是公开的。如果被恶意访问,流程就会被误触发。解决办法是:在 Webhook 节点设置中,开启 Authentication(鉴权),或者在 URL 中带上复杂的 Token 参数,只在内部邮件中发给特定的人。
2. 流程挂起的时间限制
n8n 的 Community 版本中,工作流挂起是有时间限制的(通常是 1 小时左右)。如果你的审批流程可能需要几天才有人点,那光靠 Wait 节点是不够的。这种情况,建议配合 Cron 节点(定时查询)或者把状态存入外部数据库(如 Airtable/PostgreSQL),用两套工作流配合使用。
FAQ:关于 Wait 节点的常见疑问
Q1: Wait 节点会占用我很多的执行次数(Executions)吗?
A: 不会。一旦流程进入 Wait 状态,它就不占用当前的执行资源了,直到被唤醒才算一次完整的执行。
Q2: 我可以用它来等待用户填写表单吗?
A: 可以。原理是一样的。你可以把 Webhook URL 放在表单提交后的跳转链接里,或者作为表单接收数据的接口。
Q3: 这个“复活链接”会失效吗?
A: 默认情况下,该链接在流程被唤醒一次后就会失效。如果你希望同一个链接能多次使用(比如周期性审批),需要在 Wait 节点配置里调整,或者使用 Webhook 节点配合数据库状态来实现。
总结与资源
Wait 节点的 On Webhook Call 模式,是将 n8n 从简单的“触发-执行”工具,升级为支持复杂业务逻辑的“业务编排引擎”的关键一步。它让自动化不再冷冰冰,而是拥有了等待人类智慧介入的能力。
如果你还在为流程中的“人工卡点”发愁,赶紧去 N8N大学 的案例库中找找相关模板试试吧!