Skip to content

Common issues and questions 常见问题和疑问#

以下是 Webhook 网络钩子节点 的一些常见问题和疑问以及建议的解决方案。

Listen for multiple HTTP methods 监听多个HTTP方法#

默认情况下,Webhook 网络钩子节点接受使用单一方法的调用。例如,它可以接受 GET 获取或 POST 发送请求,但不能同时接受两者。如果您想接受使用多种方法的调用:

  1. 打开节点 Settings 设置
  2. 开启 Allow Multiple HTTP Methods 允许多个HTTP方法
  3. 返回 Parameters 参数。默认情况下,节点现在接受 GET 获取和 POST 发送调用。您可以在 HTTP Methods HTTP方法 字段中添加其他方法。

Webhook 网络钩子节点为每个方法都有一个输出,因此您可以根据方法执行不同的操作。

Use the HTTP Request node to trigger the Webhook node 使用HTTP Request节点触发Webhook节点#

HTTP Request HTTP请求 节点向您指定的 URL 发出 HTTP 请求。

  1. 创建一个新工作流。
  2. 将 HTTP Request HTTP请求节点添加到工作流中。
  3. Request Method 请求方法 下拉列表中选择一个方法。例如,如果您在 Webhook 网络钩子节点中选择 GET 获取作为 HTTP method HTTP方法,则在 HTTP Request HTTP请求节点中选择 GET 获取作为请求方法。
  4. 从 Webhook 网络钩子节点复制 URL,并将其粘贴到 HTTP Request HTTP请求节点的 URL 字段中。
  5. 如果为网络钩子节点使用测试 URL:执行包含 Webhook 网络钩子节点的工作流。
  6. 执行 HTTP Request HTTP请求节点。

Use curl to trigger the Webhook node 使用curl触发Webhook节点#

您可以使用 curl 发出触发 Webhook 网络钩子节点的 HTTP 请求。

Note

在示例中,将 <https://your-n8n.url/webhook/path> 替换为您的网络钩子 URL。 示例发出 GET 获取请求。您可以使用在 HTTP Method HTTP方法 中设置的任何 HTTP 方法。

发出不带任何参数的 HTTP 请求:

1
curl --request GET <https://your-n8n.url/webhook/path>

发出带有正文参数的 HTTP 请求:

1
curl --request GET <https://your-n8n.url/webhook/path> --data 'key=value'

发出带有头部参数的 HTTP 请求:

1
curl --request GET <https://your-n8n.url/webhook/path> --header 'key=value'

发出发送文件的 HTTP 请求:

1
curl --request GET <https://your-n8n.url/webhook/path> --from 'key=@/path/to/file'
/path/to/file 替换为您要发送的文件的路径。

Send a response of type string 发送字符串类型的响应#

默认情况下,响应格式是 JSON 或数组。要发送字符串类型的响应:

  1. 选择 Response Mode 响应模式 > When Last Node Finishes 当最后一个节点完成时
  2. 选择 Response Data 响应数据 > First Entry JSON 第一个条目JSON
  3. 选择 Add Option 添加选项 > Property Name 属性名称
  4. 输入包含响应的属性名称。默认为 data
  5. Edit Fields 编辑字段节点 连接到 Webhook 网络钩子节点。
  6. 在 Edit Fields 编辑字段节点中,选择 Add Value 添加值 > String 字符串
  7. Name 名称 字段中输入属性名称。名称应与步骤 4 中的属性名称匹配。
  8. Value 值 字段中输入字符串值。
  9. Keep Only Set 仅保留设置 切换为开启(绿色)。

当您调用 Webhook 网络钩子时,它会从 Edit Fields 编辑字段节点发送字符串响应。

Test URL versus Production URL 测试URL与生产URL#

n8n 为每个 Webhook 网络钩子节点生成两个 Webhook URLs 网络钩子URLTest URL 测试URLProduction URL 生产URL

在构建或测试工作流时,使用 Test URL 测试URL。一旦您准备在生产中使用您的 Webhook URL,请使用 Production URL 生产URL

URL type URL类型 How to trigger 如何触发 Listening duration 监听持续时间 Data shown in editor UI? 在编辑器UI中显示数据?
Test URL 测试URL 选择 Listen for test event 监听测试事件 并从源触发测试事件。 120 秒 ✅
Production URL 生产URL 激活工作流 直到工作流停用 ❌

请参考 Workflow development 工作流开发 了解更多信息。

IP addresses in whitelist are failing to connect 白名单中的IP地址连接失败#

如果您无法从 IP 白名单中的 IP 地址连接,请检查您是否在反向代理后运行 n8n。

如果是,请将 N8N_PROXY_HOPS environment variable 环境变量 设置为 n8n 在其后运行的反向代理的数量。

Only one webhook per path and method 每个路径和方法只能有一个网络钩子#

n8n 只允许为每个路径和 HTTP 方法组合注册一个网络钩子(例如,对 /my-requestGET 获取 请求)。这避免了应该接收请求的网络钩子的歧义。

如果您收到所选路径和方法已在使用中的消息,您可以:

  • 停用具有冲突网络钩子的工作流。
  • 为其中一个冲突的网络钩子更改网络钩子路径和/或方法。