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

Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
info

Korzystając z modułu apigee-access, możesz pobierać dane mapy par klucz-wartość (KVM) z Edge w aplikacji Node.js. Ta metoda pobierania mapy klucz-wartość jest alternatywą dla korzystania z zasad operacji mapy klucz-wartość w celu pobierania danych mapy klucz-wartość w przepływie danych proxy API.

KVM zapewniają długotrwałą trwałość dowolnych par klucz-wartość, które można pobrać w czasie działania. Możesz na przykład przechowywać wartości limitów, wartości wygaśnięcia tokena dostępu OAuth i wartości wygaśnięcia tokena odświeżania OAuth w maszynie wirtualnej dla każdego środowiska wdrożenia, a następnie pobierać te wartości w kodzie.

Możesz utworzyć KVM w jednym z 3 zakresów: organization, environment i apiproxy. Jeśli na przykład utworzysz KVM w zakresie apiproxy dla serwera proxy „foo”, dostęp do niej będzie miał tylko serwer proxy „foo”. Jeśli utworzysz instancję KVM w zakresie środowiska „testowego”, wszystkie serwery proxy interfejsu API wdrożone w „testowym” środowisku organizacji mogą uzyskać dostęp do niej, ale żaden z serwerów proxy wdrożonych w środowisku „prod” nie będzie miał do niej dostępu.

Po utworzeniu mapy wartości klucza za pomocą interfejsu zarządzania, interfejsu zarządzania API lub zasad operacji mapy wartości klucza (patrz Długotrwałe przechowywanie danych w pamięci podręcznej) możesz pobrać dane za pomocą funkcji opisanych w tym artykule.

Przykładowy wzór KVM: https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Więcej informacji o module apigee-access i jego innych funkcjach znajdziesz w artykule Korzystanie z modułu 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 zwróceniu obiektu KVM użyj funkcji getKeys i get, aby zwrócić nazwy kluczy lub konkretną wartość klucza.

Parametry:

  • kvm_name – nazwa KVM, do której chcesz uzyskać dostęp.
  • scope – zakres KVM. organization, environment, api, lub revision.
  • proxy_name – w przypadku zakresu api tylko nazwa serwera proxy API.

Zwroty:

Obiekt KVM.

Przykład:

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

Jeśli ustawisz zakres 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 KVM.

Parametry:

  • callback: (wymagany) Funkcja wywołania zwrotnego używa dwóch parametrów:
    • Obiekt Error, jeśli operacja się nie powiedzie.
    • Obiekt (keys_array w przykładzie powyżej), który reprezentuje tablicę 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 znaków jednoznacznie identyfikujący element w pamięci podręcznej.

  • callback: (wymagany) Funkcja wywołania zwrotnego używa 2 parametrów:

    • Obiekt Error, jeśli operacja się nie powiedzie.
    • Obiekt zawierający wartość klucza KVM jako ciąg 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);
});