Estás viendo la documentación de Apigee Edge.
Ir a la documentación de
Apigee X. info
Puedes usar el módulo apigee-access para obtener datos del mapa de clave-valor (KVM) de Edge desde una aplicación de Node.js. Este método de recuperación de KVM es una alternativa al uso de la política Key Value Map Operations para recuperar datos de KVM en un flujo de proxy de API.
Los KVM proporcionan persistencia a largo plazo de pares clave-valor arbitrarios que puedes recuperar en el entorno de ejecución. Por ejemplo, puedes almacenar valores de cuota, valores de vencimiento de tokens de acceso de OAuth y valores de vencimiento de tokens de actualización de OAuth en un KVM para cada entorno de implementación y, luego, recuperar los valores en tu código.
Puedes crear un KVM en uno de los tres permisos: organization, environment y apiproxy. Por ejemplo, si creas un KVM en el alcance de apiproxy para el proxy "foo", solo el proxy "foo" puede acceder al KVM. O si creas un KVM en el alcance del entorno "test", todos los proxies de API implementados en el entorno "test" de una organización pueden acceder al KVM, pero ninguno de los proxies implementados en el entorno "prod" puede acceder a él.
Después de crear un KVM con la API de administración, la IU de administración o la política Key Value Map Operations (consulta Almacenamiento en caché de persistencia a largo plazo), usa las funciones que se indican aquí para recuperar los datos.
Para ver un excelente patrón de KVM, consulta Un patrón para almacenar en caché los valores de KVM.
Para obtener una introducción al módulo apigee-access y sus otras funciones, consulta Cómo usar el módulo apigee-access.
Métodos
Los siguientes métodos funcionan en KVM encriptados y sin encriptar.
getKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
Recupera un KVM en un alcance determinado (organización, entorno, API o revisión). Después de que se muestre el objeto KVM, usa las funciones getKeys y get para mostrar los nombres de las claves o un valor de clave específico.
Parámetros:
- kvm_name: Es el nombre del KVM al que se accederá.
- scope: Es el alcance del KVM. Uno de
organization,environment, api,orevision. - proxy_name: Para un scope de solo api, es el nombre del proxy de API.
Muestra:
Es un objeto KVM.
Ejemplo:
var apigee = require('apigee-access'); var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
Si configuras scope como api, se requiere 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);Devuelve un array que contiene los nombres de todas las claves del KVM.
Parámetros:
-
callback: (Obligatorio) La función de devolución de llamada usa dos parámetros:- Objeto Error si falla la operación.
- Un objeto (
keys_arrayen el ejemplo anterior) que representa el array de nombres de claves de KVM.
Muestra:
Es 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 de KVM.
Parámetros:
-
key: (Obligatorio) Es una cadena que identifica de forma única el elemento en la caché. -
callback: (Obligatorio) La función de devolución de llamada usa dos parámetros:- Objeto Error si falla la operación.
- Objeto que contiene el valor de la 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); });