Node.js'de anahtar değeri eşlemelerine erişme

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Bir Node.js uygulamasından Edge anahtar/değer eşlemesi (KVM) verileri almak için apigee-access modülünü kullanabilirsiniz. Bu KVM alma yöntemi, API proxy akışında KVM verilerini almak için Anahtar Değeri Eşleme İşlemleri politikasını kullanmaya alternatiftir.

KVM'ler, çalışma zamanında alabileceğiniz rastgele anahtar/değer çiftlerinin uzun süreli kalıcılığını sağlar. Örneğin, her dağıtım ortamı için kota değerlerini, OAuth erişim jetonunun geçerlilik bitiş değerlerini ve OAuth yenileme jetonu süre sonu değerlerini bir KVM'de depolayabilir, ardından kodunuzdaki değerleri alabilirsiniz.

KVM'yi şu üç kapsamdan birinde oluşturabilirsiniz: organization, environment ve apiproxy. Örneğin, "foo" proxy için apiproxy kapsamında bir KVM oluşturursanız yalnızca "foo" proxy'si KVM'ye erişebilir. Ya da "test" ortamı kapsamında bir KVM oluşturursanız bir kuruluşun "test" ortamında dağıtılan tüm API proxy'leri KVM'ye erişebilir ancak "prod" ortamında dağıtılan proxy'lerin hiçbiri ona erişemez.

Management API, yönetim kullanıcı arayüzü veya Anahtar/Değer Eşlemesi İşlemleri politikası (bkz. Uzun süreli kalıcı önbelleğe alma) ile bir KVM oluşturduktan sonra verileri almak için buradaki işlevleri kullanın.

Mükemmel bir KVM kalıbı için https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html adresine bakın.

apigee-access modülü ve diğer özellikleriyle ilgili tanıtım için Apigee-access modülünü kullanma sayfasını inceleyin.

Yöntemler

Aşağıdaki yöntemler hem şifrelenmiş hem de şifrelenmemiş KVM'lerde çalışır.


getKeyValueMap

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

Belirli bir kapsamdaki (kuruluş, ortam, api veya düzeltme) bir KVM alır. KVM nesnesi döndürüldükten sonra anahtar adlarını veya belirli bir anahtar değerini döndürmek için getKeys ve get işlevlerini kullanın.

Parametreler:

  • kvm_name - Erişilecek KVM'nin adı.
  • scope: KVM'nin kapsamı. Şunlardan biri: organization, environment, api, veya revision.
  • proxy_name: Yalnızca api'nin kapsamı için API proxy'sinin adı.

İade et:

Bir KVM nesnesi.

Örnek:

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

scope öğesini api olarak ayarlarsanız üçüncü bir parametre gerekir, yani API proxy'sinin adı. Örneğin:

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

getKeys

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

KVM'deki tüm anahtarların adlarını içeren bir dizi döndürür.

Parametreler:

  • callback: (Zorunlu) Geri çağırma işlevi iki parametre kullanır:
    • İşlem başarısız olursa Hata nesnesi.
    • KVM anahtar adları dizisini temsil eden bir nesne (yukarıdaki örnekte keys_array).

İade et:

KVM anahtar adları dizisi.

Örnek:

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

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

Bir KVM anahtarının değerini alır.

Parametreler:

  • key: (Zorunlu) Önbellekteki öğeyi benzersiz şekilde tanımlayan bir dize.

  • callback: (Zorunlu) Geri çağırma işlevi iki parametre kullanır:

    • İşlem başarısız olursa Hata nesnesi.
    • Dize olarak KVM anahtarı değerini içeren nesne.

Örnek:

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