Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X. информация
Вы можете использовать модуль apigee-access
для получения данных карты значений ключей Edge (KVM) из приложения Node.js. Этот метод получения KVM является альтернативой использованию политики операций с сопоставлением значений ключей для получения данных KVM в потоке прокси-сервера API.
KVM обеспечивают долгосрочное сохранение произвольных пар ключ/значение, которые вы можете получить во время выполнения. Например, вы можете хранить значения квот, значения срока действия токена доступа OAuth и значения срока действия токена обновления OAuth в KVM для каждой среды развертывания, а затем получать значения в своем коде.
Вы можете создать KVM в одной из трех областей: organization
, environment
и apiproxy
. Например, если вы создаете KVM в области apiproxy для прокси-сервера «foo», только прокси-сервер «foo» сможет получить доступ к KVM; или если вы создаете KVM в «тестовой» среде, все прокси-серверы API, развернутые в «тестовой» среде организации, могут получить доступ к KVM, но ни один из прокси-серверов, развернутых в «производственной» среде, не может получить к ней доступ.
После создания KVM с API управления, пользовательским интерфейсом управления или политикой операций с сопоставлением значений ключей (см. Долгосрочное постоянное кэширование ), используйте функции здесь для получения данных.
Отличный шаблон KVM см. на странице https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html .
Знакомство с модулем apigee-access
и другими его функциями см. в разделе «Использование модуля apigee-access» .
Методы
Следующие методы работают как с зашифрованными, так и с незашифрованными KVM.
GetKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
Получает KVM в определенной области (организация, среда, API или версия). После возврата объекта KVM используйте функции getKeys
и get
, чтобы вернуть имена ключей или определенное значение ключа.
Параметры:
- kvm_name — имя KVM для доступа.
- область действия — область действия KVM. Одно из следующих значений :
organization
,environment, api,
илиrevision
. - proxy_name — только для области API , имя прокси-сервера API.
Возврат:
Объект KVM.
Пример:
var apigee = require('apigee-access'); var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
Если вы установите область действия API , то потребуется третий параметр — имя прокси-сервера API. Например:
var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');
получить ключи
var kvmKeys = apigee.getKeys(function( err , keys_array );
Возвращает массив, содержащий имена всех ключей KVM.
Параметры:
-
callback
: (Обязательно) Функция обратного вызова использует два параметра:- Объект Error в случае сбоя операции.
- Объект (
keys_array
в приведенном выше примере), представляющий массив имен клавиш KVM.
Возврат:
Массив имен клавиш KVM.
Пример:
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 });
получать
kvm.get(' key ', function( err, key_value ));
Получает значение ключа KVM.
Параметры:
key
: (Обязательно) Строка, которая однозначно идентифицирует элемент в кэше.callback
: (Обязательно) Функция обратного вызова использует два параметра:- Объект Error в случае сбоя операции.
- Объект, содержащий значение ключа KVM в виде строки.
Пример:
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); });