Dostęp do map par klucz-wartość w Node.js

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Za pomocą modułu apigee-access możesz pobrać mapę wartości klucza brzegowego (KVM) z aplikacji Node.js. Ta metoda pobierania KVM jest alternatywą dla używania mapę par klucz-wartość Zasada operacji do pobierania danych KVM w procesie serwera proxy interfejsu API.

Wirtualne maszyny wirtualne zapewniają trwałą trwałość dowolnych par klucz-wartość, które można pobrać w środowisku wykonawczym. Możesz na przykład przechowywać wartości limitów, wartości wygaśnięcia tokenów dostępu OAuth i protokoły OAuth odśwież wartości wygaśnięcia tokena w maszynie wirtualnej KVM dla każdego środowiska wdrażania, a następnie pobierz w kodzie.

KVM możesz utworzyć w jednym z 3 zakresów: organization, environment i apiproxy. Jeśli na przykład utworzysz maszynę KVM w aplikacji Zakres apiproxy dla elementu „foo” serwer proxy, tylko „foo” serwer proxy może uzyskać dostęp do KVM; lub jeśli utworzysz KVM w trakcie testu zakres środowiska, wszystkie serwery proxy API wdrożone w „teście” organizacji środowisko ma dostęp do KVM, ale żaden z serwerów proxy wdrożonych w środowisku „prod” środowisko może uzyskać do niego dostęp.

Po utworzeniu maszyny wirtualnej przy użyciu interfejsu API do zarządzania, interfejsu zarządzania lub operacji na mapie klucz-wartość (patrz sekcja Długoterminowe trwałości buforowania), użyj tych funkcji, aby pobrać dane.

Szczegółowe informacje o wzorcu KVM znajdziesz na stronie https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

W ramach wprowadzenia do modułu apigee-access i innych jego funkcji Więcej informacji można znaleźć w sekcji Korzystanie z Apigee-access .

Metody

Poniższe metody działają zarówno w przypadku zaszyfrowanych, jak i niezaszyfrowanych maszyn KVM.


getKeyValueMap

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

Pobiera KVM w konkretnym zakresie (organizacji, środowiska, interfejsu API lub wersji). Po Zostanie zwrócony obiekt KVM. Użyj funkcji getKeys i get, aby zwrócić nazwy kluczy lub konkretnej pary klucz-wartość.

Parametry:

  • kvm_name – nazwa maszyny wirtualnej, do której chcesz uzyskać dostęp.
  • scope – zakres KVM. Jedna z tych możliwości: organization, environment, api, lub revision.
  • proxy_name – dla zakresu: tylko api, nazwa interfejsu API; serwera proxy.

Zwroty:

Obiekt KVM.

Przykład:

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

Jeśli ustawisz wartość scope na api, wymagany jest trzeci parametr: nazwa serwera proxy interfejsu API. Na przykład:

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

getKeys

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

Zwraca tablicę zawierającą nazwy wszystkich kluczy w maszynie wirtualnej.

Parametry:

  • callback: (wymagany): funkcja wywołania zwrotnego używa 2 elementów. parametry:
    • Obiekt błędu w przypadku niepowodzenia operacji.
    • Obiekt (keys_array w przykładzie powyżej) reprezentujący tablica nazw kluczy KVM.

Zwroty:

Tablica nazw kluczy KVM.

Przykład:

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

pobierz

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

Pobiera wartość klucza KVM.

Parametry:

  • key: (wymagany): ciąg, który jednoznacznie identyfikuje elementu w pamięci podręcznej.

  • callback: (wymagany): funkcja wywołania zwrotnego używa 2 elementów. parametry:

    • Obiekt błędu w przypadku niepowodzenia operacji.
    • Obiekt zawierający wartość klucza KVM w formie ciągu znaków.

Przykład:

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