현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서로 이동 정보
apigee-access
모듈을 사용하여 Node.js 애플리케이션 내에서 Edge 키-값 맵 (KVM) 데이터를 가져올 수 있습니다. 이 KVM 검색 방법은 키 값 맵 작업 정책을 사용하여 API 프록시 흐름에서 KVM 데이터를 검색하는 대안입니다.
KVM은 런타임에 검색할 수 있는 임의의 키-값 쌍의 장기 지속성을 제공합니다. 예를 들어 할당량 값, OAuth 액세스 토큰 만료 값, OAuth 새로고침 토큰 만료 값을 각 배포 환경의 KVM에 저장한 다음 코드에서 값을 검색할 수 있습니다.
KVM은 organization
, environment
, apiproxy
의 세 가지 범위 중 하나에 만들 수 있습니다. 예를 들어 'foo' 프록시의 apiproxy 범위에서 KVM을 만드는 경우 'foo' 프록시만 KVM에 액세스할 수 있습니다. 또는 'test' 환경 범위에서 KVM을 만들면 조직의 'test' 환경에 배포된 모든 API 프록시는 KVM에 액세스할 수 있지만 'prod' 환경에 배포된 프록시는 모두 KVM에 액세스할 수 없습니다.
관리 API, 관리 UI 또는 키-값 맵 작업 정책 (장기 지속성 캐싱 참고)으로 KVM을 만든 후 여기에 있는 함수를 사용하여 데이터를 가져옵니다.
유용한 KVM 패턴은 https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html을 참고하세요.
apigee-access
모듈 및 기타 기능에 대한 소개는 Apigee-access 모듈 사용을 참조하세요.
메서드
다음 메서드는 암호화된 KVM과 암호화되지 않은 KVM에서 모두 작동합니다.
getKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
특정 범위 (조직, 환경, API 또는 버전)에서 KVM을 검색합니다. 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');
scope를 api로 설정하면 세 번째 매개변수인 API 프록시의 이름이 필요합니다. 예를 들면 다음과 같습니다.
var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');
getKeys
var kvmKeys =
apigee.getKeys(function(err, keys_array);
KVM에 있는 모든 키의 이름이 포함된 배열을 반환합니다.
매개변수:
-
callback
: (필수) 콜백 함수는 다음 두 매개변수를 사용합니다.- 작업이 실패하면 Error 객체입니다.
- KVM 키 이름 배열을 나타내는 객체 (위 예에서는
keys_array
)입니다.
반환:
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); });