常见问题与疑问#
以下是关于Webhook节点的一些常见问题和疑问以及建议的解决方案。
监听多种HTTP方法#
默认情况下,Webhook节点仅接受使用单一方法的调用。例如,它可以接受GET或POST请求,但不能同时接受两者。如果您想接受使用多种方法的调用:
- 打开节点设置。
- 开启允许多种HTTP方法选项。
- 返回参数。默认情况下,该节点现在接受GET和POST调用。您可以在HTTP方法字段中添加其他方法。
Webhook节点为每个方法提供了一个输出,因此您可以根据方法执行不同的操作。
使用HTTP请求节点触发Webhook节点#
HTTP Request节点可向您指定的URL发起HTTP请求。
- 创建一个新的工作流。
- 在工作流中添加HTTP请求节点。
- 从请求方法下拉列表中选择一个方法。例如,如果在Webhook节点中选择GET作为HTTP方法,则在HTTP请求节点中也选择GET作为请求方法。
- 从Webhook节点复制URL,并将其粘贴到HTTP Request节点的URL字段中。
- 如果使用webhook节点的测试URL:通过Webhook节点执行工作流。
- 执行HTTP请求节点。
使用curl触发Webhook节点#
你可以使用curl发送HTTP请求来触发Webhook节点。
注意
在示例中,请将替换为您的webhook URL。
这些示例使用GET请求。您可以使用在HTTP方法中设置的任何HTTP方法。
发起一个不带任何参数的HTTP请求:
1 | |
使用body参数发起HTTP请求:
1 | |
使用头部参数发起HTTP请求:
1 | |
发起HTTP请求以发送文件:
1 | |
/path/to/file替换为您要发送的文件路径。
发送字符串类型的响应#
默认情况下,响应格式为JSON或数组。要发送字符串类型的响应:
- 选择 响应模式 > 当最后一个节点完成时。
- 选择 响应数据 > 首条JSON记录。
- 选择添加选项 > 属性名称。
- 输入包含响应的属性名称。默认为
data。 - 将一个编辑字段节点连接到Webhook节点。
- 在编辑字段节点中,选择添加值 > 字符串。
- 在名称字段中输入属性名称。该名称应与步骤4中的属性名称保持一致。
- 在值字段中输入字符串值。
- 将仅保留已设置切换为开启(绿色)。
当您调用Webhook时,它会发送来自编辑字段节点的字符串响应。
测试URL与生产URL对比#
n8n为每个Webhook节点生成两个Webhook URL:一个测试URL和一个生产环境URL。
在构建或测试工作流时,请使用测试URL。当您准备在生产环境中使用Webhook URL时,请使用生产URL。
| URL类型 | 如何触发 | 监听持续时间 | 在编辑器界面显示数据? |
|---|---|---|---|
| 测试URL | 选择监听测试事件并从源触发测试事件。 | 120秒 | |
| 生产环境URL | 激活工作流 | 直到工作流停用 |
更多信息请参考工作流开发。
白名单中的IP连接失败#
如果无法从IP白名单中的IP连接,请检查是否在反向代理后运行n8n。
如果是这样,请将环境变量 N8N_PROXY_HOPS 设置为n8n运行所在的反向代理数量。