Accesso alle mappe chiave-valore in Node.js

Stai visualizzando la documentazione di Apigee Edge.
Vai alla sezione Documentazione di Apigee X.
Informazioni

Puoi utilizzare il modulo apigee-access per ottenere la mappa chiave-valore perimetrale (KVM) direttamente dall'interno di un'applicazione Node.js. Questo metodo di recupero di KVM è un'alternativa all'utilizzo la Mappa dei valori-chiave Criterio operativo per recuperare i dati KVM in un flusso proxy API.

Le KVM forniscono la persistenza a lungo termine di coppie chiave/valore arbitrarie che è possibile recuperare presso runtime. Ad esempio, puoi archiviare i valori di quota, i valori di scadenza del token di accesso OAuth e OAuth aggiorna i valori di scadenza del token in una KVM per ogni ambiente di deployment, quindi recupera nel codice.

Puoi creare una KVM in uno dei tre ambiti seguenti: organization, environment e apiproxy. Ad esempio, se crei una KVM ambito apiproxy per il comando "foo" proxy, solo il comando "foo" un proxy possa accedere alla KVM; o se crei un'immagine KVM al "test" nell'ambito dell'ambiente, tutti i proxy API di cui è stato eseguito il deployment nel "test" di un'organizzazione dell'ambiente può accedere alla KVM, ma nessuno dei proxy di cui è stato eseguito il deployment nel deployment dell'ambiente può per accedervi.

Dopo aver creato una KVM con l'API di gestione, l'interfaccia utente di gestione o le operazioni di Key Value Map (consulta la sezione Informazioni sullo stato memorizzazione nella cache di persistenza), utilizza le funzioni qui per recuperare i dati.

Per un pattern KVM ottimale, visita https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Per un'introduzione al modulo apigee-access e alle sue altre funzionalità, consulta Utilizzo di apigee-access modulo.

Metodi

I seguenti metodi funzionano su KVM criptate e 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). Dopo il Quando viene restituito un 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.
  • ambito - L'ambito della KVM. Uno dei seguenti: organization, environment, api, o revision.
  • proxy_name: per un ambito di api, il nome dell'API proxy.

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 nella KVM.

Parametri:

  • callback (obbligatorio): la funzione di callback utilizza due parametri:
    • Un oggetto Error se l'operazione non riesce.
    • Un oggetto (keys_array nell'esempio precedente) che rappresenta un array di nomi delle chiavi KVM.

Resi:

Un array di nomi delle 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
}); 

recupero

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 riesce.
    • 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);
});