常见问题和疑问
以下是
Webhook 节点的一些常见问题和疑问以及建议的解决方案。监听多种 HTTP 方法
默认情况下,Webhook 节点接受使用单一方法的调用。例如,它可以接受 GET 或 POST 请求,但不能同时接受两者。如果您想接受使用多种方法的调用:
- 打开节点设置。
- 开启“允许多种 HTTP 方法” 。
- 返回到“参数” 。默认情况下,该节点现在接受 GET 和 POST 调用。您可以在“HTTP 方法”字段中添加其他方法。
Webhook 节点对每种方法都有一个输出,因此您可以根据方法执行不同的操作。
使用 HTTP 请求节点触发 Webhook 节点
HTTP 请求节点向您指定的 URL 发出 HTTP 请求。- 创建新的工作流程。
- 将 HTTP 请求节点添加到工作流。
- 从“请求方法”下拉列表中选择一种方法。例如,如果您在 Webhook 节点中选择 GET 作为HTTP 方法,则在“HTTP 请求”节点中选择 GET 作为请求方法。
- 从 Webhook 节点复制 URL,并将其粘贴到HTTP 请求节点中的URL字段中。
- 如果使用 webhook 节点的测试 URL:使用 Webhook 节点执行工作流。
- 执行 HTTP 请求节点。
使用 curl 触发 Webhook 节点
您可以使用
curl发出触发 Webhook 节点的 HTTP 请求。笔记
在示例中,将其替换为您的 Webhook URL。这些示例会发出 GET 请求。您可以使用在
HTTP 方法中设置的任何 HTTP 方法。发出不带任何参数的 HTTP 请求:
1 | |
发出带有 body 参数的 HTTP 请求:
1 | |
发出带有标头参数的 HTTP 请求:
1 | |
发出 HTTP 请求来发送文件:
1 | |
/path/to/file with the path of the file you want to send.
发送字符串类型的响应
默认情况下,响应格式为 JSON 或数组。要发送字符串类型的响应,请执行以下操作:
- 选择响应模式>当最后一个节点完成时。
- 选择响应数据>第一个条目 JSON 。
- 选择添加选项>属性名称。
- 输入包含响应的属性的名称。默认值为。
- 将编辑字段节点连接到 Webhook 节点。
- 在编辑字段节点中,选择添加值>字符串。
- 在“名称”字段中输入属性的名称。该名称应与步骤 4 中的属性名称一致。
- 在值字段中输入字符串值。
- 将“仅保留设置”切换为开启(绿色)。
当您调用 Webhook 时,它会从编辑字段节点发送字符串响应。
测试 URL 与生产 URL
n8n为每个 Webhook 节点生成两个
Webhook URL :一个测试 URL和一个生产 URL 。构建或测试工作流时,请使用
测试 URL 。 准备好在生产环境中使用 Webhook URL 后,请使用生产 URL 。| URL 类型 | 如何触发 | 聆听时长 | 数据显示在编辑器 UI 中? |
|---|---|---|---|
| 测试网址 | 选择监听测试事件并从源触发测试事件。 | 120秒 | |
| 生产 URL | 激活工作流程 | 直到工作流程停用 |
有关详细信息,请参阅
工作流开发。白名单中的 IP 地址无法连接
如果您无法从 IP 白名单中的 IP 地址进行连接,请检查您是否在反向代理后面运行 n8n。
如果是这样,请将
环境变量设置为 n8n 后面运行的反向代理的数量。每个路径和方法只有一个 webhook
n8n 只允许为每个路径和 HTTP 方法组合注册一个 webhook(例如,一个的请求)。这样可以避免在选择哪个 webhook 接收请求时产生歧义。
如果您收到一条消息,提示您选择的路径和方法已被使用,您可以:
- 停用具有冲突的 webhook 的工作流。
- 更改其中一个冲突的 webhook 的 webhook 路径和/或方法。