Accéder aux mappages clé-valeur dans Node.js

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

Vous pouvez utiliser le module apigee-access pour obtenir un mappage de clé-valeur périphérique (KVM). depuis une application Node.js. Cette méthode de récupération de KVM est une alternative à l'utilisation le Key Value Map Règle des opérations pour récupérer les données KVM dans un flux de proxy d'API.

Les KVM permettent une persistance à long terme de paires clé/valeur arbitraires que vous pouvez récupérer de l'environnement d'exécution. Par exemple, vous pouvez stocker les valeurs de quota, les valeurs d'expiration des jetons d'accès OAuth et les valeurs actualiser les valeurs d'expiration des jetons dans une KVM pour chaque environnement de déploiement, puis récupérer dans votre code.

Vous pouvez créer une KVM avec l'un des trois champs d'application suivants: organization, environment et apiproxy. Par exemple, si vous créez une KVM au niveau Champ d'application apiproxy pour "foo" proxy, seul le paramètre "foo" le proxy peut accéder à la KVM, ou si vous créez KVM au "test" champ d'application de l'environnement, tous les proxys d'API déployés l'environnement peut accéder au KVM, mais aucun des proxys déployés dans la "production" environnement y accéder.

Après avoir créé une KVM avec l'API de gestion, l'UI de gestion ou les opérations de mappage de valeurs clés (voir la section À long terme mise en cache de la persistance), utilisez ces fonctions pour récupérer les données.

Pour un modèle KVM de qualité, consultez https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Pour découvrir le module apigee-access et ses autres fonctionnalités, consultez la section Utilisation de la commande d'entraînement.

Méthodes

Les méthodes suivantes fonctionnent à la fois sur les KVM chiffrées et non chiffrées.


getKeyValueMap

var kvm = apigee.getKeyValueMap('kvm_name', 'scope');
var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');

Récupère une KVM dans un champ d'application particulier (organisation, environnement, API ou révision). Après le l'objet KVM est renvoyé, utilisez les fonctions getKeys et get pour renvoyer des noms de clé ou une valeur-clé spécifique.

Paramètres :

  • kvm_name : nom de la KVM à laquelle accéder.
  • scope : champ d'application de la KVM. Spécifiez l'une des valeurs suivantes : organization, environment, api, ou revision.
  • proxy_name : pour un champ d'application de api uniquement, le nom de l'API proxy.

Renvoie :

Objet KVM.

Exemple :

var apigee = require('apigee-access');
var kvm = apigee.getKeyValueMap('my_kvm', 'environment');

Si vous définissez scope sur api, vous devez ajouter un troisième paramètre : le nom du proxy d'API. Exemple :

var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');

getKeys

var kvmKeys = apigee.getKeys(function(err, keys_array);

Renvoie un tableau contenant les noms de toutes les clés de la KVM.

Paramètres :

  • callback: (obligatoire) la fonction de rappel utilise deux paramètres:
    • Un objet Error si l'opération échoue.
    • Un objet (keys_array dans l'exemple ci-dessus) qui représente le tableau de noms de clés KVM.

Renvoie :

Tableau de noms de clés KVM.

Exemple :

var apigee = require('apigee-access');
var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
  kvm.getKeys(function(err, keys_array) {
    // use the array of key names here
}); 

obtenir

kvm.get('key', function(err, key_value));

Récupère la valeur d'une clé KVM.

Paramètres :

  • key: (obligatoire) chaîne qui identifie de manière unique l'élément en cache.

  • callback: (obligatoire) la fonction de rappel utilise deux paramètres:

    • Un objet Error si l'opération échoue.
    • Objet contenant la valeur de la clé KVM sous forme de chaîne.

Exemple :

var apigee = require('apigee-access');
var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
  kvm.get('foo_key', function(err, key_value) {
    // Use the key value here. For example the following assigns the value
    // to a 'kvmvalue' variable in the response, which can be used by policies:
      apigee.setVariable(response, 'kvmvalue', key_value);
});