首页 > 解决方案 > Jolt 使用值作为键查找

问题描述

给出输入:

{
  "influencers": [
    {
      "influencer_field_name": "COULD_BE_WHATEVER_STRING"
    }
  ],
  "COULD_BE_WHATEVER_STRING": [
    "abcdefg"
  ]
}

输出应该是:

{
  "influencer_id": "abcdefg"
}

我如何使用 Jolt 获取值influencer_field_name并查找具有该值的键?

这在 Jolt 中是否可行?

谢谢!

标签: jolt

解决方案


回答以备日后参考...

经过一番摆弄,我找到了解决方案。不确定这是最好的方法,但就是这样。

[
  {
    "operation": "shift",
    "spec": {
      "@(influencers[0].influencer_field_name)": {
        "*": {
          "@(2,&[0])": "influencer_id"
        }
      }
    }
  }
]

所以基本上我们遍历路径influencers[0].influencer_field_name,然后我们保存值,*以便我们可以在&.

然后我们上升 2 层并获取键的值并提取数组的第一个元素@(2,&[0])

就是这样……再见!


推荐阅读