Auf Schlüssel/Wert-Zuordnungen in Node.js zugreifen

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Sie können das Modul apigee-access verwenden, um die Edge-Schlüssel/Wert-Zuordnung (Key Value Map, KVM) abzurufen Daten aus einer Node.js-Anwendung abzurufen. Diese Methode des KVM-Abrufs ist eine Alternative zur Verwendung von die Schlüssel/Wert-Zuordnung Vorgangsrichtlinie zum Abrufen von KVM-Daten in einem API-Proxy-Ablauf.

KVMs bieten langfristige Persistenz von beliebigen Schlüssel/Wert-Paaren, die Sie unter Laufzeit. Beispielsweise können Sie Kontingentwerte, Ablaufwerte von OAuth-Zugriffstokens und OAuth- Aktualisieren Sie die Ablaufwerte von Tokens für jede Bereitstellungsumgebung in einer KVM und rufen Sie dann Werte in Ihren Code ein.

Sie können eine KVM in einem von drei Bereichen erstellen: organization, environment und apiproxy. Wenn Sie z. B. eine KVM am apiproxy-Bereich für „foo“ Proxy, nur der "foo" Proxy auf die KVM zugreifen kann; oder wenn Sie eine KVM beim "Test" Umgebungsbereich, alle API-Proxys, die im "Test" einer Organisation bereitgestellt werden Umgebung kann auf die KVM zugreifen, aber keiner der in der Produk-Umgebung bereitgestellten Proxys kann die Umgebung darauf zugreifen können.

Nachdem Sie eine KVM mit der Verwaltungs-API, der Verwaltungsbenutzeroberfläche oder den Schlüsselwertzuordnungsvorgängen erstellt haben (siehe Langfristige Persistenz-Caching), verwenden Sie die hier aufgeführten Funktionen, um die Daten abzurufen.

Ein gutes KVM-Muster finden Sie unter https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Eine Einführung in das Modul apigee-access und seine anderen Funktionen Siehe Verwenden des Apigee-Zugriffs Modul.

Methoden

Die folgenden Methoden funktionieren sowohl auf verschlüsselten als auch unverschlüsselten KVMs.


getKeyValueMap

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

Ruft eine KVM in einem bestimmten Bereich (Organisation, Umgebung, API oder Überarbeitung) ab. Nach dem KVM-Objekt zurückgegeben wird, verwenden Sie die Funktionen getKeys und get, um den Fehlercode Schlüsselnamen oder einem bestimmten Schlüssel/Wert-Paar angeben.

Parameter:

  • kvm_name – Name der KVM, auf die zugegriffen werden soll.
  • scope – Bereich der KVM. Entweder organization, environment, api, oder revision.
  • proxy_name – für den Bereich von Nur api: der Name der API Proxy.

Gibt zurück:

Ein KVM-Objekt.

Beispiel:

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

Wenn Sie scope auf api setzen, ist ein dritter Parameter erforderlich: den Namen des API-Proxys. Beispiel:

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

getKeys

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

Gibt ein Array zurück, das die Namen aller Schlüssel in der KVM enthält.

Parameter:

  • callback (erforderlich): Die Callback-Funktion verwendet zwei Parameter:
      .
    • Ein Fehlerobjekt, wenn der Vorgang fehlschlägt.
    • Ein Objekt (keys_array im Beispiel oben), das den Array von KVM-Schlüsselnamen.

Gibt zurück:

Ein Array von KVM-Schlüsselnamen.

Beispiel:

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
}); 

abrufen

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

Ruft den Wert eines KVM-Schlüssels ab.

Parameter:

  • key: (erforderlich) Ein String, der eindeutig identifiziert das Element im Cache.

  • callback (erforderlich): Die Callback-Funktion verwendet zwei Parameter:

    • Ein Fehlerobjekt, wenn der Vorgang fehlschlägt.
    • Das Objekt, das den KVM-Schlüssel/Wert als String enthält.

Beispiel:

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);
});