الوصول إلى خرائط القيم الأساسية في Node.js

أنت تعرض مستندات Apigee Edge.
انتقل إلى مستندات Apigee X.
معلومات

يمكنك استخدام وحدة apigee-access للحصول على خريطة قيمة مفتاح Edge (KVM). البيانات من داخل تطبيق Node.js. وتُعد طريقة استرجاع KVM بديلاً عن استخدام خريطة القيم الرئيسية سياسة العمليات لاسترداد بيانات KVM في مسار الخادم الوكيل لواجهة برمجة التطبيقات.

توفر KVMs ثباتًا طويل الأمد لأزواج المفتاح/القيمة العشوائية التي يمكنك استردادها من خلال وقت التشغيل. على سبيل المثال، يمكنك تخزين قيم الحصة، وقيم انتهاء صلاحية رمز الدخول المميز عبر OAuth، وبروتوكول OAuth إعادة تحميل قيم انتهاء صلاحية الرمز المميز في KVM لكل بيئة نشر، ثم استرداد القيم في التعليمة البرمجية.

يمكنك إنشاء KVM في أحد هذه النطاقات الثلاثة: organization. environment وapiproxy على سبيل المثال، إذا قمت بإنشاء آلة متجه الدعم في نطاق apiproxy لـ "foo" الوكيل، فإن "foo" فقط الوصول إلى KVM؛ أو إذا قمت بإنشاء KVM في "الاختبار" نطاق البيئة، حيث يتم نشر جميع الخوادم الوكيلة لواجهة برمجة التطبيقات في "اختبار" المؤسسة الوصول إلى KVM، إلا أنه لا يوجد أي من الخوادم الوكيلة المنشورة في عملية "الإنتاج" بيئتي الوصول إليه.

بعد إنشاء KVM باستخدام واجهة برمجة التطبيقات للإدارة أو واجهة مستخدم الإدارة أو عمليات خريطة القيم الرئيسية السياسة (راجِع المقالة على المدى الطويل) التخزين المؤقت للمثابرة)، استخدم الدوال هنا لاسترداد البيانات.

للحصول على نمط KVM رائع، يُرجى الاطّلاع على https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

للاطّلاع على مقدمة عن وحدة apigee-access وميزاتها الأخرى، يمكنك الانتقال إلى الرابط التالي: راجع استخدام الوصول إلى واجهة برمجة التطبيقات .

الطُرق

تعمل الطرق التالية على كل من أجهزة KVM المشفّرة وغير المشفرة.


getKeyValueMap

var kvm = apigee.getKeyValueMap('kvm_name', 'scope');
var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');

استرداد KVM في نطاق معين (مؤسسة أو بيئة أو واجهة برمجة تطبيقات أو مراجعة). بعد يتم إرجاع كائن KVM، ويمكنك استخدام الدالتين getKeys وget لعرض أو أسماء مفاتيح أو قيمة مفتاحية محددة.

المَعلمات:

  • kvm_name - اسم KVM الذي تريد الوصول إليه.
  • scope - نطاق KVM. أحد الخيارات organization أو environment, api, أو revision
  • proxy_name - بالنسبة لنطاق من واجهة برمجة التطبيقات فقط، اسم واجهة برمجة التطبيقات الخادم الوكيل.

المرتجعات:

يشير هذا المصطلح إلى كائن KVM.

مثال:

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

في حال ضبط النطاق على واجهة برمجة التطبيقات، يجب استخدام مَعلمة ثالثة: اسم الخادم الوكيل لواجهة برمجة التطبيقات. على سبيل المثال:

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