גישה למפות של ערכים מרכזיים ב-Node.js

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

אפשר להשתמש במודול apigee-access כדי לקבל נתונים של מיפוי ערכי מפתח (KVM) של Edge מתוך אפליקציית Node.js. השיטה הזו לאחזור KVM היא חלופה לשימוש במדיניות פעולות של מפת צמדי מפתח/ערך כדי לאחזר נתוני KVM בתהליך של proxy ל-API.

ב-KVM אפשר לאחסן צמדי מפתח/ערך שרירותיים לטווח ארוך, ולאחזר אותם בזמן ריצה. לדוגמה, אפשר לאחסן ערכי מכסה, ערכי תפוגה של טוקן גישה של OAuth וערכי תפוגה של טוקן רענון של OAuth ב-KVM לכל סביבת פריסה, ואז לאחזר את הערכים בקוד.

אפשר ליצור KVM באחד משלושת ההיקפים הבאים: organization,‏ environment ו-apiproxy. לדוגמה, אם יוצרים KVM בהיקף apiproxy לשרת ה-proxy foo, רק שרת ה-proxy foo יכול לגשת ל-KVM. לחלופין, אם יוצרים KVM בהיקף הסביבה test, כל שרתי ה-proxy של ה-API שנפרסו בסביבת ה-test של הארגון יכולים לגשת ל-KVM, אבל אף אחד משרתי ה-proxy שנפרסו בסביבת ה-prod לא יכול לגשת אליו.

אחרי שיוצרים KVM באמצעות Management API, ממשק ניהול או מדיניות Key Value Map Operations (ראו Long-term persistence caching), משתמשים בפונקציות שמופיעות כאן כדי לאחזר את הנתונים.

דוגמה מצוינת לתבנית KVM מופיעה במאמר תבנית לשמירת ערכי KVM במטמון.

למידע נוסף על מודול apigee-access ועל התכונות האחרות שלו, אפשר לעיין במאמר שימוש במודול apigee-access.

Methods

השיטות הבאות פועלות גם ב-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 – אם ההיקף הוא api בלבד, שם ה-proxy של ה-API.

החזרות:

אובייקט KVM.

דוגמה:

var apigee = require('apigee-access');
var kvm = apigee.getKeyValueMap('my_kvm', 'environment');

אם מגדירים את scope ל-api, נדרש פרמטר שלישי – שם ה-proxy ל-API. לדוגמה:

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

getKeys

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);
});