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

Przeglądasz dokumentację Apigee Edge.
Otwórz dokumentację Apigee X.
Informacje

Za pomocą modułu apigee-access możesz pobierać dane mapy klucz-wartość Edge (KVM) z aplikacji Node.js. Ta metoda pobierania KVM jest alternatywą dla korzystania z zasady operacji mapowania wartości kluczy do pobierania danych KVM w procesie serwera proxy interfejsu API.

Długoterminowe pary klucz/wartość, które można pobierać w czasie działania, są trwałe. Możesz na przykład przechowywać wartości limitów, wartości ważności tokena dostępu OAuth i wartości ważności tokena odświeżania OAuth w KVM dla każdego środowiska wdrożenia, a następnie pobierać wartości z kodu.

Możesz utworzyć KVM na 1 z 3 zakresów: organization, environment lub apiproxy. Jeśli na przykład utworzysz KVM w zakresie apiproxy dla serwera proxy „foo”, tylko serwer proxy „foo” będzie miał dostęp do tej maszyny wirtualnej. Jeśli natomiast utworzysz KVM w zakresie środowiska „test”, wszystkie serwery proxy interfejsu API wdrożone w środowisku testowym organizacji będą miały dostęp do KVM, ale żaden z serwerów proxy wdrożonych w środowisku „prod” nie będzie miał do niego dostępu.

Gdy utworzysz KVM za pomocą interfejsu API zarządzania, interfejsu zarządzania lub zasady operacji na mapie klucz-wartość (zobacz Buforowanie długoterminowej trwałości), użyj dostępnych tutaj funkcji, aby pobrać dane.

Więcej informacji o wzorcu KVM znajdziesz na stronie https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Wprowadzenie do modułu apigee-access i jego innych funkcji znajdziesz w artykule Korzystanie z modułu dostępu apigee.

Metody

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


getKeyValueMap

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

Pobiera KVM w określonym zakresie (organizacja, środowisko, interfejs API lub wersja). Po zwróceniu obiektu KVM, użyj funkcji getKeys i get, aby zwrócić nazwy lub konkretną wartość klucza.

Parametry:

  • kvm_name: nazwa KVM, do którego można uzyskać dostęp.
  • scope – zakres KVM. Jedna z wartości: organization, environment, api, lub revision.
  • proxy_name – nazwa proxy_name tylko api, czyli nazwa serwera proxy interfejsu API.

Zwraca:

Obiekt KVM.

Przykład:

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

Jeśli ustawisz scope na api, wymagany będzie 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 wykorzystuje 2 parametry:
    • obiekt Błąd w przypadku niepowodzenia operacji.
    • Obiekt (keys_array w powyższym przykładzie) reprezentujący tablicę nazw kluczy KVM.

Zwraca:

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, który jednoznacznie identyfikuje element w pamięci podręcznej.

  • callback: (wymagany) funkcja wywołania zwrotnego korzysta z 2 parametrów:

    • obiekt Błąd w przypadku niepowodzenia operacji.
    • Obiekt zawierający wartość klucza KVM w postaci 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);
});