当前位置: 首页 > 面试题库 >

使用Jolt重新建立JSON对象的父级

许马鲁
2023-03-14
问题内容

我想使用Jolt将JSON对象向下移动一级。这是我的输入数据

{
    "rating": {
        "primary": {
            "value": 3,
            "max": 5
        },
        "quality": {
            "value": 3,
            "max": 7
        }
    }
}

我正在使用以下规范文件:

[
  {
    "operation": "shift",
    "spec": {
      "$": "NEWPARENT"
    }
  }
]

我目前正在生成此输出:

{
  "NEWPARENT" : "root"
}

但是,我的目标是产生:

{
  "NEWPARENT": {
    "rating": {
      "primary": {
        "value": 3,
        "max": 5
      },
      "quality": {
        "value": 3,
        "max": 7
      }
    }
  }
}

谁能帮助我创建正确的规格文件?


问题答案:

规格

[
  {
    "operation": "shift",
    "spec": {
      "@": "NEWPARENT"
    }
  }
]

仅供参考,您看到的“根”是Jolt处理顶级JSON输入可以是List或Map以及您希望能够将List转换为Map的事实的一种产物。 (反之亦然)。

因此,摇动“包装”输入,以便“总是”转换具有单个键“ root”且值为输入的Map。



 类似资料:
  • 请帮忙。 谢谢,哈里

  • 我有一个嵌套的JSON对象,如下所示: 我想将其转换为: 我如何使用JOLT实现这一点?感谢您的参与。

  • 预期输出JSON: 提前致谢

  • 输入: 期望输出: 所以基本上输入json放在另一个json对象包装器的“Event3”中。 这是我的规格: 现在的问题是 - 上面的规范正在执行转换,但对象的排序被搞砸了,如下所示: 请建议我应该如何解决这个问题。

  • 问题内容: 如何使用javascript或jQuery动态更新以下JSON对象? 我想将用户名动态更新为“ Id”为“ 3”的“ Thomas”。 我该如何实现? 问题答案: 一个简单的JavaScript解决方案,假定已经包含JSON: 在其上循环查找匹配的ID,设置相应的用户名,并在修改了匹配项之后从循环中进行查找: 它在jsFiddle上。 这是包装在函数中的同一件事:

  • 我需要使用jolt转换来完成下面的JSON转换。 需要从重新定义列的列表中创建新列,有时我们只有一个值,有时我们会得到多个值我的输入数据:- 示例 1: 示例2: 例3: 我已经写了如下的颠簸表达 使用上述 Jolt 表达式工作正常,但无法为上述 Jolt 添加列名输出如下 示例 1: 示例2: 在这里,我无法更改列的名称,因为我需要将列更改为如下所示:jolt转换后的预期输出如下所示 示例 1: