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

پس‌از ایجاد KVM با میانای برنامه‌سازی کاربردی مدیریت، میانای کاربر مدیریت، یا خط‌مشی «عملیات نقشه مقدار کلید» (به ذخیره کردن داده‌های ماندگار بلندمدت مراجعه کنید)، از توابع اینجا برای بازیابی داده‌ها استفاده کنید.

برای الگوی KVM عالی، الگویی برای ذخیره کردن مقادیر KVM را ببینید.

برای آشنایی با واحد apigee-access و ویژگی‌های دیگر آن، به استفاده از واحد apigee-access مراجعه کنید.

روش‌ها

روش‌های زیر هم در KVM رمزگذاری‌شده و هم در 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 برای دسترسی.
  • scope - حوزه KVM. یکی از organization، environment, api, یا revision.
  • proxy_name - برای scope از فقط 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: (الزامی) تابع برگشتی از دو پارامتر استفاده می‌کند: پارامترها:
    • اگر عملیات ناموفق باشد، یک شیء «خطا».
    • شیئی (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: (الزامی) تابع فراخوانی متقابل از دو پارامتر استفاده می‌کند:

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