问题描述
{
"StartAt": "S1","States": {
"S1": {
"Type": "Pass","Parameters": {
"Fruits.$": "$.Junk.Fruits"
},"ResultPath": "$.Main.Fruits","Next": "S2"
},"S2": {
"Type": "Pass","OutputPath": "$.Main","End": true
}
}
}
我的输入如下-
{
"Main": {
"Field": "field","Field2": "field2","Fruits":[]
},"Junk": {
"Fruits":["apple","banana","papaya","grapes"]
}
}
我得到的输出如下-
{
"Field": "field","Fruits": {
"Fruits": [
"apple","grapes"
]
}
}
我想要的输出如下-
{
"Field": "field","Fruits": [ "apple","grapes" ]
}
能否请你修正阶跃函数,以便我得到我想要的输出。 请不要使用 lambda 函数,也不要修改输入。
解决方法
您可以像这样使用 Parameters
来获得您想要的输出:
{
"StartAt": "S1","States": {
"S1": {
"Type": "Pass","Parameters": {
"Field.$": "$.Main.Field","Field2.$": "$.Main.Field2","Fruits.$": "$.Junk.Fruits"
},"End": true
}
}
}
但如果您正在寻找合并两个 JSON 对象(不知道密钥),恐怕 AWS Step Functions 尚不支持它。