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