You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Step Function状态间传递时移除指定键值对?

在Step Functions中移除输入里的特定键值对

针对你的需求——不想逐个指定要保留的参数,直接移除不需要的CurrentSubAccountChunkResults键,有两种实用方案:

方案1:用Lambda函数直接处理(最灵活)

写个极简的Lambda函数,接收输入后删掉目标键再返回,逻辑简单直接,适合需要删除单个或多个键的场景。

比如用Node.js写的Lambda示例:

exports.handler = async (event) => {
  delete event.CurrentSubAccountChunkResults;
  return event;
};

在Step Functions里加一个Task状态调用这个Lambda,把当前状态的输入传给Lambda,处理后的结果直接流转到下一个状态就行。

方案2:用Pass状态的参数覆盖技巧(无额外资源)

如果不想新增Lambda资源,可以利用Pass状态的参数处理能力,通过覆盖目标键为null再结合ResultSelector过滤的方式实现:

{
  "Type": "Pass",
  "Parameters": {
    "tempInput": "$",
    "tempInput.CurrentSubAccountChunkResults": null
  },
  "ResultSelector": {
    "$": "$.tempInput"
  },
  "Next": "你的下一个状态名称"
}

原理是先把整个输入复制到tempInput对象里,将目标键设为null,再通过ResultSelector返回处理后的tempInput——Step Functions会自动忽略值为null的键,最终输出就会移除CurrentSubAccountChunkResults。

不过要注意,这种方法如果输入里原本就有值为null的键,也会被一并移除,适合你的输入里没有这种情况的场景。

内容的提问来源于stack exchange,提问作者raosa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 12:15:31