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

Apigee Edge belgelerini görüntülüyorsunuz.
. Git: Apigee X belgeleri.
bilgi

Edge anahtar/değer eşlemesi (KVM) için apigee-access modülünü kullanabilirsiniz Node.js uygulamasındaki verileri kullanır. Bu KVM alma yöntemi, Anahtar/Değer Eşlemesi İşlem politikası ile API proxy akışındaki KVM verilerini alabilirsiniz.

KVM'ler, istediğiniz yerden alabileceğiniz rastgele anahtar/değer çiftlerinin uzun süreli kalıcılığını sağlar. belirler. Örneğin kota değerlerini, OAuth erişim jetonunun geçerlilik bitiş değerlerini ve OAuth her dağıtım ortamı için bir KVM'de jeton geçerlilik süresi değerlerini yeniledikten sonra değerleridir.

Üç kapsamdan birinde bir KVM oluşturabilirsiniz: organization, environment ve apiproxy. Örneğin, "foo" için apiproxy kapsamı proxy, yalnızca "foo" olur proxy, KVM'ye erişebilir; bir veri feed'i oluşturursanız KVM'de "test" ortam kapsamı, bir kuruluşun "test" ortamında dağıtılan tüm API proxy'leri ortamı KVM'ye erişebilir ancak "prod" içinde dağıtılan proxy'lerin hiçbiri ortamın erişebilir.

Yönetim API'si, yönetim kullanıcı arayüzü veya Anahtar/Değer Eşleme İşlemleriyle bir KVM oluşturduktan sonra (bkz. Uzun vadeli kalıcı önbellek kullanımı) veri 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 bakabilirsiniz.

apigee-access modülü ve diğer özellikleri hakkında bilgi edinmek için bkz. Apigee-access'i kullanma modülünü tıklayın.

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 kapsamda (kuruluş, ortam, API veya düzeltme) bir KVM alır. KVM nesnesi döndürülür. getKeys ve get işlevlerini kullanarak anahtar adlarını veya belirli bir anahtar değerini içerir.

Parametreler:

  • kvm_name: Erişilecek KVM'nin adı.
  • scope: KVM'nin kapsamı. organization, environment, api, veya revision özelliklerinden biri.
  • proxy_name - Şu öğenin kapsamı için: api (API'nin adı) temsil eder.

Şunu döndürür:

Bir KVM nesnesi.

Örnek:

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

scope'u api olarak ayarlarsanız üçüncü bir parametre gerekir: 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 diziyi döndürür.

Parametreler:

  • callback: (Zorunlu) Geri çağırma işlevi iki parametre:
    • İşlem başarısız olursa Hata nesnesi.
    • keys_array KVM anahtar adları dizisidir.

Şunu döndürür:

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

al

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

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

Parametreler:

  • key: (Zorunlu) Benzersiz bir şekilde tanımlayan bir dize geri yükleyebilirsiniz.

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

    • İş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);
});