คุณกำลังดูเอกสารประกอบ Apigee Edge
ไปที่
เอกสารประกอบเกี่ยวกับ Apigee X. ข้อมูล
คุณใช้โมดูล apigee-access
เพื่อรับแมปค่าคีย์ Edge (KVM) ได้
ข้อมูลจากภายในแอปพลิเคชัน Node.js ได้ วิธีการดึงข้อมูล KVM นี้เป็นทางเลือกหนึ่งนอกเหนือจากการใช้
แมปค่าคีย์
นโยบายการดำเนินการเพื่อเรียกข้อมูล KVM ในขั้นตอนพร็อกซี API
KVM จะให้ความต่อเนื่องในระยะยาวของคู่คีย์/ค่าที่กำหนดเองที่คุณดึงข้อมูลได้ รันไทม์ ตัวอย่างเช่น คุณสามารถจัดเก็บค่าโควต้า ค่าวันหมดอายุของโทเค็นเพื่อการเข้าถึง OAuth และ OAuth รีเฟรชค่าการหมดอายุของโทเค็นใน KVM สำหรับสภาพแวดล้อมการทำให้ใช้งานได้แต่ละรายการ จากนั้นเรียก ในโค้ดของคุณ
คุณสร้าง KVM ได้ 1 ใน 3 ขอบเขต ได้แก่ organization
,
environment
และ apiproxy
ตัวอย่างเช่น หากคุณสร้าง KVM ที่
ขอบเขต apiproxy สำหรับ "foo" พร็อกซี เฉพาะ "foo" เท่านั้น พร็อกซีสามารถเข้าถึง KVM ได้ หรือหากคุณสร้าง
KVM ที่ "การทดสอบ" ขอบเขตสภาพแวดล้อม, พร็อกซี API ทั้งหมดที่ติดตั้งใช้งานใน "การทดสอบ" ขององค์กร
สภาพแวดล้อมสามารถเข้าถึง KVM ได้ แต่ไม่มีพร็อกซีที่ทำให้ใช้งานได้ใน "prod" สามารถ
เข้าถึงได้
หลังจากที่คุณสร้าง KVM ด้วย API การจัดการ, UI การจัดการ หรือการดำเนินการแมปค่าคีย์ (ดูระยะยาว Persistent Caching) ใช้ฟังก์ชันที่นี่เพื่อดึงข้อมูล
สำหรับรูปแบบ 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 ที่จะเข้าถึง
- scope - ขอบเขตของ KVM รายการใดรายการหนึ่งระหว่าง
organization
,environment, api,
หรือrevision
- proxy_name - สำหรับขอบเขตของ api เท่านั้น ชื่อของ API พร็อกซี
การคืนสินค้า:
ออบเจ็กต์ KVM
ตัวอย่างเช่น
var apigee = require('apigee-access'); var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
หากตั้งค่า scope เป็น api คุณต้องระบุพารามิเตอร์ที่ 3 ดังนี้ ชื่อของพร็อกซี 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); });