دسترسی به نقشه های مقادیر کلیدی در Node.js

شما در حال مشاهده اسناد 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 دسترسی داشته باشند، اما هیچ یک از پراکسی های مستقر در محیط "prod" نمی توانند به آن دسترسی داشته باشند.

پس از ایجاد 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');

اگر scope را روی api تنظیم کنید، پارامتر سوم مورد نیاز است - نام پراکسی API. به عنوان مثال:

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

getKeys

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

یک آرایه حاوی نام همه کلیدها در KVM را برمی گرداند.

پارامترها:

  • callback : (الزامی) تابع callback از دو پارامتر استفاده می کند:
    • در صورت عدم موفقیت عملیات، یک شیء خطا.
    • یک شی ( 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 : (الزامی) تابع callback از دو پارامتر استفاده می کند:

    • در صورت عدم موفقیت عملیات، یک شیء خطا.
    • شی حاوی مقدار کلید 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);
});