带有数组列表的 AWS EventBridge 输入转换规则

AWS EventBridge Input transformation rule with array List

我有一个 Arraylist 事件:

I have an Arraylist :

"TelephoneDetails": {
    "Telephone": [
     {
       "Number": "<Number>",
        "Type": "<Type>",
        "Primary": "<Primary>",
       "TextEnabled": "<TextEnabled>"
     },{
        "Number": "<Number>",
        "Type": "<Type>",
        "Primary": "<Primary>",
        "TextEnabled": "<TextEnabled>"
     }
    ]
}
如何为此 InputPath 编写 InputTransformer? ,

我可以用这个

得到电话[0]

{

  "Type": "$.detail.payload.TelephoneDetails.Telephone[0].Type",
  "Number": "$.detail.payload.TelephoneDetails.Telephone[0].Number",
  "Primary": "$.detail.payload.TelephoneDetails.Telephone[0].Primary",
  "TextEnabled": "$.detail.payload.TelephoneDetails.Telephone[0].TextEnabled"

}

不懂怎么写,如果我有N个ArrayList?

我认为您不能使用普通的 EB 语法来做到这一点。可能最好的方法是将 lambda 函数 作为您的 EB 规则的目标,进行转换,然后将其转发给您的目标。

就这么简单:

"TextEnabled": "$.detail.payload.TelephoneDetails.Telephone[*].TextEnabled"

请注意 [*] 而不是 [0] 让模板引擎迭代 Telephones

列表