选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

ItemSelector (地图)

聚焦模式
ItemSelector (地图) - AWS Step Functions

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理状态和转换数据

Step Functions 最近添加了变量JSONata,用于管理状态和转换数据。

了解如何使用变量传递数据使用转换数据JSONata

默认情况下,Map 状态的有效输入是原始状态输入中的一组单个数据项。使用 ItemSelector 字段,可在数据项的值传递到 Map 状态之前对其进行覆盖。要覆盖这些值,请指定包含一组键值对的有效JSON输入。这些对可以是状态机定义中提供的静态值、使用路径从状态输入中选择的值或从 Conte xt 对象访问的值。

如果您使用路径或 Context 对象指定键值对,则键名必须以结尾。.$

注意

ItemSelector 字段取代了 Map 状态内的 Parameters 字段。如果您在 Map 状态定义中使用 Parameters 字段来创建自定义输入,我们强烈建议您将其替换为 ItemSelector

您可以在内联 Map 状态分布式 Map 状态中指定 ItemSelector 字段。

例如,考虑以下JSON输入,该输入包含imageData节点内三个项目的数组。对于每次 Map 状态迭代,都会将一个数组项作为输入传递给迭代。

[ { "resize": "true", "format": "jpg" }, { "resize": "false", "format": "png" }, { "resize": "true", "format": "jpg" } ]

使用该ItemSelector字段,您可以定义自定义JSON输入以覆盖原始输入,如以下示例所示。然后,Step Functions 将此自定义输入传递给每次 Map 状态迭代。自定义输入包含Map状态的静态值size和上下文对象数据的值。C $$.Map.Item.Value ontext 对象包含每个单独数据项的值。

{ "ItemSelector": { "size": 10, "value.$": "$$.Map.Item.Value" } }

以下示例显示了内联 Map 状态 的一次迭代所接收的输入:

{ "size": 10, "value": { "resize": "true", "format": "jpg" } }
提示

有关使用 ItemSelector 字段的分布式 Map 状态 的完整示例,请参阅使用分布式 Map 复制大规模 CSV

下一主题:

ItemBatcher

上一主题:

ItemsPath
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。