คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ
Apigee X info
คุณสามารถใช้โมดูล apigee-access เพื่อรับข้อมูลแผนที่ค่าคีย์ (KVM) ของ Edge
จากภายในแอปพลิเคชัน Node.js วิธีการดึงข้อมูล KVM นี้เป็นอีกทางเลือกหนึ่งแทนการใช้นโยบายการดำเนินการกับ Key Value Mapเพื่อดึงข้อมูล KVM ในโฟลว์ของ API Proxy
KVM ช่วยให้คู่คีย์/ค่าที่กำหนดเองคงอยู่ได้ในระยะยาว ซึ่งคุณสามารถเรียกข้อมูลได้ที่ รันไทม์ เช่น คุณสามารถจัดเก็บค่าโควต้า ค่าการหมดอายุของโทเค็นเพื่อการเข้าถึง OAuth และค่าการหมดอายุของโทเค็นรีเฟรช OAuth ใน KVM สำหรับสภาพแวดล้อมการติดตั้งใช้งานแต่ละรายการ จากนั้นเรียกค่าในโค้ด
คุณสร้าง KVM ได้ที่ขอบเขต 3 ระดับ ได้แก่ organization
environment และ apiproxy เช่น หากสร้าง KVM ที่ขอบเขต apiproxy สำหรับพร็อกซี "foo" เฉพาะพร็อกซี "foo" เท่านั้นที่จะเข้าถึง KVM ได้ หรือหากสร้าง KVM ที่ขอบเขตสภาพแวดล้อม "test" พร็อกซี API ทั้งหมดที่ติดตั้งใช้งานในสภาพแวดล้อม "test" ขององค์กรจะเข้าถึง KVM ได้ แต่ไม่มีพร็อกซีใดที่ติดตั้งใช้งานในสภาพแวดล้อม "prod" ที่จะเข้าถึง KVM ได้
หลังจากสร้าง KVM ด้วย Management API, UI การจัดการ หรือนโยบายการดำเนินการกับแมปค่าคีย์ (ดูการแคชแบบคงทนระยะยาว) ให้ใช้ฟังก์ชันที่นี่เพื่อดึงข้อมูล
ดูรูปแบบ KVM ที่ดีได้ที่รูปแบบสำหรับการแคชค่า KVM
ดูข้อมูลเบื้องต้นเกี่ยวกับโมดูล 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 ใช้พารามิเตอร์ 2 รายการ ดังนี้- ออบเจ็กต์ข้อผิดพลาดหากการดำเนินการล้มเหลว
- ออบเจ็กต์ (
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 ใช้พารามิเตอร์ 2 รายการ ดังนี้- ออบเจ็กต์ข้อผิดพลาดหากการดำเนินการล้มเหลว
- ออบเจ็กต์ที่มีค่าคีย์ 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); });