Step Functions中用Result Selector过滤DynamoDB JSON数组无结果问题
解决Step Functions Result Selector过滤DynamoDB格式输出的问题
问题出在你写的JSONPath表达式里,字符串字面量PRIMARY没加引号——JSONPath规则里,字符串比较必须用引号包裹值。
原表达式中的@.system.S == PRIMARY会把PRIMARY当成变量而非字符串,自然匹配不到结果。你只需要给PRIMARY加上单引号(避免和外层JSON的双引号冲突),就能直接过滤DynamoDB格式的响应,完全不需要额外用Lambda做反序列化。
正确的Result Selector应该是:
{"events.$":"$.data.events[?(@.system.S == 'PRIMARY')]"}
这样就能精准匹配到system.S为PRIMARY的事件条目,直接得到符合条件的结果。
内容的提问来源于stack exchange,提问作者user3473406
相关产品推荐
相关产品推荐

