2016-07-27 9 views
3

Я пытаюсь понять, почему Apigee имеет такой формат для Key/Value maps. Когда creating a key вы должны опубликовать JSON как это:Почему карта Apigee Key/Value имеет такой формат

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

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

Когда you'r accessing a Key/Value Map вы должны использовать политику как это:

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

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

ответ

1

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

 Смежные вопросы

  • Нет связанных вопросов^_^