Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
以下输入和预期输出所需的Jolt规范_Jolt - Fatal编程技术网

以下输入和预期输出所需的Jolt规范

以下输入和预期输出所需的Jolt规范,jolt,Jolt,我需要根据id是否存在,将data列表拆分为两个独立的idExists和idNotExists列表 有人能帮助我使用Jolt规范来实现以下结果吗 输入: { “数据”:[ { “姓名”:“a”, “id”:“100” }, { “名称”:“b”, “id”:“101” }, { “名称”:“c” } ] } 输出: { “理想主义者”:[ { “姓名”:“a”, “id”:“100” }, { “名称”:“b”, “id”:“101” } ], “IdNotExists”:[ { “名称”:“

我需要根据
id
是否存在,将
data
列表拆分为两个独立的
idExists
idNotExists
列表

有人能帮助我使用Jolt规范来实现以下结果吗

输入:

{
“数据”:[
{
“姓名”:“a”,
“id”:“100”
},
{
“名称”:“b”,
“id”:“101”
},
{
“名称”:“c”
}
]
}
输出:

{
“理想主义者”:[
{
“姓名”:“a”,
“id”:“100”
},
{
“名称”:“b”,
“id”:“101”
}
],
“IdNotExists”:[
{
“名称”:“c”
}
]
}
我已经尝试了以下规格,但它不是预期的工作

[
{
“操作”:“修改默认测试版”,
“规格”:{
“数据”:{
"": {
“id”:“NotExist”
}
}
}
},
{
“操作”:“移位”,
“规格”:{
“数据”:{
"": {
“id”:{
"10*": {
“@2”:“IdExists[]”
},
"*": {
“@2”:“IdNotExists[]”
}
}
}
}
}
}
]

我对您的规范进行了一些修改,添加了
*
,因为它在选择器中缺失

将移位条件修改为NotExist,最后将仅名称移位为IdNotExists数组

[
  {
    "operation": "modify-default-beta",
    "spec": {
      "data": {
        "*": {
          "id": "NotExist"
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "data": {
        "*": {
          "id": {
            "NotExist": {
              "@(2,name)": "IdNotExists[].name"
            },
            "*": {
              "@2": "IdExists[]"
            }
          }
        }
      }
    }
  }
]

你要求从A到Z解决你的问题。你应该首先尝试,并且只询问你遇到的具体问题。另外,请对您的介绍性文本使用正常格式。我已经尝试过,但没有得到预期的输出[{“操作”:“修改默认测试版”,“规范”:{“数据”:{“:{“id”:“NotExist”}}},{“操作”:“移位”,“规范”:{“数据”:{“:{”id”:{“10*”:{“@2”:“IdExists[]”},“*”:{“@2”:“IdNotExists[]“}}}}}}]但是使用上面的Jolt规范。我们不会得到以下输出{“IdExists”:[{“name”:“a”,“id”:“100”},{“name”:“b”}],“IdNotExists”:[{“name”:“c”}]}因为我不知道如何过滤,所以我添加了。但是我不需要在响应中添加的默认值。“id”:“NOTEXIST”我试图理解,在IdExists中,为什么名称中缺少id:b.NOTEXIST是一个临时值,用于标识缺少的id值。它在shift规范
“id”中被删除:{“NOTEXIST”:{(2,name)”:“IdNotExists[].name”},*:{@2:“IdExists[]”}
用于IdNotExists条件