Stai visualizzando la documentazione di Apigee Edge.
Vai alla documentazione di Apigee X. info
Puoi utilizzare il modulo apigee-access
per recuperare i dati della mappatura delle chiavi e dei valori (KVM) di Edge da un'applicazione Node.js. Questo metodo di recupero delle mappe chiave/valore è un'alternativa all'utilizzo del criterio di operazioni per le mappe chiave/valore per recuperare i dati delle mappe chiave/valore in un flusso di proxy API.
Le KVM forniscono la persistenza a lungo termine di coppie chiave/valore arbitrarie che puoi recuperare in fase di runtime. Ad esempio, puoi memorizzare i valori delle quote, i valori di scadenza dei token di accesso OAuth e i valori di scadenza dei token di aggiornamento OAuth in una KVM per ogni ambiente di implementazione, quindi recuperare i valori nel codice.
Puoi creare una KVM in uno dei tre ambiti: organization
,
environment
e apiproxy
. Ad esempio, se crei una KVM nell'ambito di apiproxy per il proxy "foo", solo il proxy "foo" può accedere alla KVM; oppure se crei una KVM nell'ambito dell'ambiente "test", tutti i proxy API dipiazzati nell'ambiente "test" di un'organizzazione possono accedere alla KVM, ma nessuno dei proxy dipiazzati nell'ambiente "prod" può accedervi.
Dopo aver creato una mappa di valori chiave con l'API di gestione, l'interfaccia utente di gestione o il criterio di operazioni sulla mappa di valori chiave (vedi Memorizzazione nella cache della persistenza a lungo termine), utilizza le funzioni riportate di seguito per recuperare i dati.
Per un ottimo pattern KVM, consulta https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.
Per un'introduzione al modulo apigee-access
e alle altre sue funzionalità, consulta Utilizzare il modulo apigee-access.
Metodi
I seguenti metodi funzionano sia su KVM criptate che non criptate.
getKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
Recupera una KVM in un determinato ambito (organizzazione, ambiente, API o revisione). Una volta restituito l'oggetto KVM, utilizza le funzioni getKeys
e get
per restituire i nomi delle chiavi o un valore chiave specifico.
Parametri:
- kvm_name - Il nome della KVM a cui accedere.
- scope: l'ambito del KVM. Uno dei valori
organization
,environment, api,
orevision
. - proxy_name: solo per un ambito di api, il nome del proxy API.
Restituisce:
Un oggetto KVM.
Esempio:
var apigee = require('apigee-access'); var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
Se imposti scope su api, è necessario un terzo parametro: il nome del proxy API. Ad esempio:
var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');
getKeys
var kvmKeys =
apigee.getKeys(function(err, keys_array);
Restituisce un array contenente i nomi di tutte le chiavi nella KVM.
Parametri:
-
callback
: (obbligatorio) la funzione di callback utilizza due parametri:- Un oggetto Error se l'operazione non va a buon fine.
- Un oggetto (
keys_array
nell'esempio precedente) che rappresenta l'array di nomi delle chiavi KVM.
Restituisce:
Un array di nomi di chiavi KVM.
Esempio:
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 });
get
kvm.get('key', function(err,
key_value));
Recupera il valore di una chiave KVM.
Parametri:
-
key
: (obbligatorio) una stringa che identifica in modo univoco l'elemento nella cache. -
callback
: (obbligatorio) la funzione di callback utilizza due parametri:- Un oggetto Error se l'operazione non va a buon fine.
- L'oggetto contenente il valore della chiave KVM come stringa.
Esempio:
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); });