Accede a mapas de pares clave-valor en Node.js

Estás viendo la documentación de Apigee Edge.
Ve a la Documentación de Apigee X.
información

Puedes usar el módulo apigee-access para obtener un mapa de par clave-valor de Edge (KVM). datos desde una aplicación de Node.js. Este método de recuperación de KVM es una alternativa al uso el mapa de par clave-valor Política de operaciones para recuperar datos de KVM en un flujo del proxy de la API.

Los KVM proporcionan persistencia a largo plazo de pares clave-valor arbitrarios que puedes recuperar con tiempo de ejecución. Por ejemplo, puedes almacenar valores de cuota, valores de vencimiento de tokens de acceso de OAuth y actualizar los valores de vencimiento del token en un KVM para cada entorno de implementación y, luego, recuperar valores en tu código.

Puedes crear un KVM en uno de estos tres permisos: organization. environment y apiproxy. Por ejemplo, si creas un KVM al Alcance de apiproxy para “foo” proxy, solo se puede usar “foo” el proxy puede acceder al KVM; o si creas un KVM en la “prueba” permiso del entorno, todos los proxies de API implementados en la “prueba” de una organización puede acceder al KVM, pero ninguno de los proxies implementados en la etapa entorno pueden accedan a ellos.

Después de crear un KVM con la API de administración, la IU de administración o las operaciones del mapa de par clave-valor (consulta la sección A largo plazo almacenamiento en caché por persistencia), usa estas funciones para recuperar los datos.

Para obtener un buen patrón de KVM, consulte https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Para ver una introducción al módulo apigee-access y sus otras funciones, consulta Usa el servicio de Apigee módulo.

Métodos

Los siguientes métodos funcionan en KVM encriptados y no encriptados.


getKeyValueMap

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

Recupera un KVM en un permiso en particular (organización, entorno, API o revisión). Después del KVM como se muestra, usa las funciones getKeys y get para mostrar el los nombres de las claves o un par clave-valor específico.

Parámetros:

  • kvm_name: Es el nombre del KVM al que se accederá.
  • scope: El alcance del KVM. organization, environment, api, o revision.
  • proxy_name: para un alcance de api, el nombre de la API proxy.

Muestra:

Un objeto KVM.

Ejemplo:

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

Si configuras scope como api, se requerirá un tercer parámetro: el nombre del proxy de API. Por ejemplo:

var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');

getKeys

var kvmKeys = apigee.getKeys(function(err, keys_array);

Muestra un array que contiene los nombres de todas las claves del KVM.

Parámetros:

  • callback: La función de devolución de llamada usa dos (obligatorio). parámetros:
    • Un objeto Error si falla la operación.
    • Un objeto (keys_array en el ejemplo anterior) que representa la un array de nombres de claves de KVM.

Muestra:

Un array de nombres de claves de KVM.

Ejemplo:

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
}); 

obtener

kvm.get('key', function(err, key_value));

Obtiene el valor de una clave KVM.

Parámetros:

  • key: Es una cadena que identifica de forma única (obligatorio). el elemento en la caché.

  • callback: La función de devolución de llamada usa dos (obligatorio). parámetros:

    • Un objeto Error si falla la operación.
    • El objeto que contiene el valor clave de KVM como una cadena.

Ejemplo:

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);
});