Stai visualizzando la documentazione di Apigee Edge.
Consulta la
documentazione di Apigee X. info
Puoi utilizzare il modulo apigee-access per ottenere i dati della mappa chiave-valore (KVM) di Edge
da un'applicazione Node.js. Questo metodo di recupero delle KVM è un'alternativa all'utilizzo
del criterio per le operazioni
della mappa chiave/valore per recuperare i dati delle KVM in un flusso proxy API.
Le KVM forniscono una persistenza a lungo termine di coppie chiave/valore arbitrarie che puoi recuperare in fase di runtime. Ad esempio, puoi memorizzare i valori di quota, i valori di scadenza del token di accesso OAuth e i valori di scadenza del token di aggiornamento OAuth in un KVM per ogni ambiente di deployment, quindi recuperare i valori nel codice.
Puoi creare una chiave KVM in uno dei tre ambiti: organization,
environment e apiproxy. Ad esempio, se crei un KVM nell'ambito apiproxy per il proxy "foo", solo il proxy "foo" può accedere al KVM; oppure, se crei un KVM nell'ambito dell'ambiente "test", tutti i proxy API di cui è stato eseguito il deployment nell'ambiente "test" di un'organizzazione possono accedere al KVM, ma nessuno dei proxy di cui è stato eseguito il deployment nell'ambiente "prod" può accedervi.
Dopo aver creato una KVM con l'API di gestione, la UI di gestione o il criterio Operazioni mappa chiave-valore (vedi Memorizzazione nella cache persistente a lungo termine), utilizza le funzioni qui per recuperare i dati.
Per un ottimo pattern KVM, consulta Un pattern per memorizzare nella cache i valori KVM.
Per un'introduzione al modulo apigee-access e alle sue altre funzionalità,
consulta Utilizzo del modulo apigee-access.
Metodi
I seguenti metodi funzionano sia su KVM criptati che non criptati.
getKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
Recupera un KVM in un ambito specifico (organizzazione, ambiente, API o revisione). Dopo che l'oggetto KVM viene restituito, utilizza le funzioni getKeys e get per restituire i nomi delle chiavi o un valore di chiave specifico.
Parametri:
- kvm_name: il nome del KVM a cui accedere.
- ambito: l'ambito del KVM. Uno dei valori
organization,environment, api,orevision. - proxy_name: per un ambito di api, solo il nome del proxy API.
Resi:
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 nel 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_arraynell'esempio precedente) che rappresenta l'array di nomi delle chiavi KVM.
Resi:
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));Ottiene 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 la coppia chiave-valore 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); });