如何在n8n中保留输入数据以实现后续合并操作?
在n8n中保留HTTP节点输入的关键字段(如prospect_id)
以下是几种实用的实现方式,按需选择:
方法1:利用HTTP节点自带的附加数据选项
这是最简便的方式,无需编写代码:
- 编辑你的HTTP节点,切换到「选项(Options)」标签页
- 找到「附加输入数据到输出(Append Input Data to Output)」选项并勾选
- 保存节点配置后,HTTP节点的输出会同时包含请求响应数据和原始输入的所有字段(包括prospect_id)
- 后续节点可以直接通过
{{ $json.prospect_id }}(部分旧版本需用{{ $json.input.prospect_id }})引用该字段
方法2:用Code节点手动合并输入与输出数据
如果需要更灵活的字段控制,或者HTTP节点无上述选项,可以在HTTP节点后添加一个Code节点:
- 在Code节点中输入以下代码(注意替换节点名称为你的实际HTTP节点名称):
// 获取前序节点的输入数据(含prospect_id) const inputData = $input.first().json; // 获取HTTP节点的响应数据 const httpResponse = $node["HTTP"].json; // 合并两个对象,保留所有字段 return [{ json: { ...inputData, ...httpResponse } }];
- 执行后,Code节点的输出会同时包含输入的关键字段和HTTP响应内容
方法3:在请求中携带关键字段(可选)
如果需要确保字段在请求环节也被传递,可将prospect_id加入请求头:
- 在HTTP节点的「请求头(Headers)」中添加自定义字段,比如
X-Prospect-ID: {{ $json.prospect_id }} - 若目标接口支持返回该字段,可直接从响应中获取;此方法仅适用于目标接口允许传递并返回该字段的场景
内容的提问来源于stack exchange,提问作者Gulzar
相关产品推荐
相关产品推荐

