首页 > 解决方案 > 处理 JSON 键中特殊字符的 NiFi 表达式语言

问题描述

所以我有一些json,其中的键可能是这样的:

{
    "name" : "John",
    "num:itparams:enterprise:2.0:content" : {
      "housing" : "5"
    },
    "num rooms": "12"
}

我从 http 请求中获取了这个 json,我需要使用 evaluateJsonPath 处理器从它们创建属性。

name 很简单,我只用 $.name

但是我将如何访问另外两个?我想你会以某种方式将它们放在引号中以逃避特殊字符,但只是做 $."num:itparams:enterprise:2.0:content" 不起作用。

标签: jsonescapingapache-nifi

解决方案


您可以将括号用于具有特殊字符的键值,例如

$.['num:itparams:enterprise:2.0:content'].housing

然后它会给你评估结果5


推荐阅读