Почему Apigee Key/Value Map имеет такой формат

Я пытаюсь понять, почему Apigee имеет такой формат для Key/ Карты значений. При создании ключа вы должны ОТПРАВИТЬ JSON следующим образом:

{
    "name": "Map_name",
    "entry": [
        {
            "name": "Key1",
            "value": "value_one"
        }, {
            "name": "Key2",
            "value": "value_two"
        }
    ]
}

Обратите внимание, что entry — это массив.

Когда вы обращаетесь к карте ключ/значение вы должны использовать такую ​​политику:

<KeyValueMapOperations mapIdentifier="Map_name">
    <Scope>environment</Scope>
    <Get assignTo="foo_variable" index="2">
        <Key>
            <Parameter>Key2</Parameter>
        </Key>
    </Get>
</KeyValueMapOperations>

Как видите, нужно указать и имя ключа, и индекс! Разве это не лишнее? Доступ к значениям по индексу немного неудобен... Это не говорит о том, что он основан на 1 (так что Паскаль!). Почему я вообще должен заботиться об индексах?


person madhead    schedule 27.07.2016    source источник


Ответы (1)


Я думаю, что каждый ключ представляет собой многозначный массив на карте. Таким образом, каждый ключ может иметь более одного значения. Индекс массива предназначен для идентификации значений в многозначном ключе. Не для всей карты.

person Santanu Dey    schedule 04.08.2016