json - 如果某些属性为空,则使用 nifi 中的 jolt 变换规范从 Json 数组中删除 Json 元素

标签 json apache-nifi jolt

我有一个 JSON 有效负载:

{  
   "fields":[  
      {  
         "title":"Priority",
         "value":"low",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"medium",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"high",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"blocker",
         "short":"true"
      },
      {  
         "title":"",
         "value":"",
         "short":"true"
      },
      {  
         "title":"",
         "value":"",
         "short":"true"
      }
   ]
}

如果属性 titlevalue 为空,我想删除数组元素。我正在使用 Jolt 变换处理器。我需要的o/p

{  
   "fields":[  
      {  
         "title":"Priority",
         "value":"low",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"medium",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"high",
         "short":"true"
      },
      {  
         "title":"Priority",
         "value":"blocker",
         "short":"true"
      }
   ]
}

任何人都可以引用我可以学习如何编写规范的地方,我将非常感激。我已经提到过https://jolt-demo.appspot.com/#inception

最佳答案

尝试先按 title 删除节点,然后按 value 删除节点:

[
  {
    "operation": "shift",
    "spec": {
      "fields": {
        "*": {
          "title": {
            "": null,
            "*": {
              "@2": "fields[]"
            }
          }
        }
      }
    }
  }, {
    "operation": "shift",
    "spec": {
      "fields": {
        "*": {
          "value": {
            "": null,
            "*": {
              "@2": "fields[]"
            }
          }
        }
      }
    }
  }
]

另请参阅:

关于json - 如果某些属性为空,则使用 nifi 中的 jolt 变换规范从 Json 数组中删除 Json 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55114435/

相关文章:

javascript - 在 Javascript 中使用 try-catch-finally block 捕获 JSON 解析异常不起作用

java - 如何将 JSONArray 转换为字符串/浮点值

python - 尝试使用Python从URL获取json数据

apache-nifi - 在 Nifi 中使用 ConvertJSONToSQL 处理器时出错

json - 有 JOLT 文档吗? &、@ 等运算符的含义是什么? (NiFi, JoltTransformJSON)

php - AJAX POST JSON 数组 Javascript NOT JQUERY

hadoop - 来自 kerberos 集群上 NIFI 的 Phoenix 连接

apache-nifi - 自动启用 Controller 服务 NiFi

java - 使用 jolt 根据位置进行数组转换的 Json

json - Jolt Transformation - 替换 json 上的文本