Я пытаюсь понять, почему 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 (так что Паскаль!). Почему я вообще должен заботиться об индексах?