2016-07-27 2 views
3

J'essaie de comprendre pourquoi Apigee a un tel format pour Key/Value maps. Lorsque creating a key vous devez envoyer un JSON comme ceci:Pourquoi Apigee Key/Value Map a un tel format

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

Notez que entry est un tableau.

Lorsque you'r accessing a Key/Value Map vous devez utiliser une politique comme celle-ci:

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

Comme vous le voyez, vous devez spécifier le nom et l'index de clé! N'est-ce pas redondant? Accéder aux valeurs par index est un peu gênant ... Ce n'est pas dire que c'est basé sur 1 (donc Pascal!). Pourquoi devrais-je même me soucier des indices?

Répondre

1

Je pense que chaque clé est un tableau à valeurs multiples dans la carte. Chaque clé peut donc avoir plusieurs valeurs. L'index de tableau sert à identifier les valeurs dans la clé à valeurs multiples. Pas pour toute la carte.