Сопоставить массив с помощью JsonPath - PullRequest
0 голосов
/ 15 октября 2018

Можно ли использовать JSONPath для отображения массива JSON в другой с меньшим количеством полей и сокращенных ключей?

Я имею дело с RESTful API, который является чрезвычайно многословным.У него слишком много полей, и тогда у каждого объекта есть очень длинные имена атрибутов.Я хочу спроецировать / отобразить выходные данные в меньшую полезную нагрузку, выбрав только несколько полей из каждого вхождения в массиве и переименовав поля в трехбуквенные ключи.

То есть из ввода, подобного этому:

[
    {
        "fooField": "foo1",
        "barField": "bar1",
        "quxField": "qux1"
    },
    {
        "fooField": "foo2",
        "barField": "bar2",
        "quxField": "qux2"
    },
    {
        "fooField": "foo3",
        "barField": "bar3",
        "quxField": "qux3"
    }
]

Я хотел бы иметь возможность произвести это:

[
    {
        "foo": "foo1",
        "bar": "bar1"
    },
    {
        "foo": "foo2",
        "bar": "bar2"
    },
    {
        "foo": "foo3",
        "bar": "bar3"
    }
]

Обратите внимание, что я переименовал поля fooField и barField и полностью удалил quxField.

Возможно, не существует простого способа сделать это с помощью JSONPath, но я понимаю, что есть оператор сценария (), который мог бы помочь, за исключением того, что я до сих пор не смог его использовать и, похоже, не могу найтипример.

...