Truy cập vào bản đồ giá trị khoá trong Node.js

Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến Tài liệu về Apigee X.
thông tin

Bạn có thể sử dụng mô-đun apigee-access để tải bản đồ giá trị khoá của Edge (KVM) từ bên trong ứng dụng Node.js. Phương pháp truy xuất KVM này là giải pháp thay thế cho việc sử dụng Bản đồ giá trị chính Chính sách hoạt động để truy xuất dữ liệu KVM trong luồng proxy API.

KVM cung cấp khả năng lưu trữ lâu dài cho các cặp khoá/giá trị tuỳ ý mà bạn có thể truy xuất tại thời gian chạy. Ví dụ: bạn có thể lưu trữ các giá trị hạn mức, giá trị hết hạn của mã truy cập OAuth và OAuth làm mới giá trị hết hạn mã thông báo trong KVM cho từng môi trường triển khai, sau đó truy xuất trong mã của bạn.

Bạn có thể tạo KVM ở một trong 3 phạm vi sau: organization, environmentapiproxy. Ví dụ: nếu bạn tạo một KVM ở Phạm vi apiproxy cho "foo" proxy, chỉ "foo" proxy có thể truy cập vào KVM; hoặc nếu bạn tạo một KVM ở "thử nghiệm" phạm vi môi trường, tất cả proxy API được triển khai trong "kiểm thử" của tổ chức môi trường có thể truy cập KVM, nhưng không có proxy nào được triển khai trong phiên bản môi trường có thể truy cập vào tệp đó.

Sau khi bạn tạo một KVM bằng API quản lý, giao diện người dùng quản lý hoặc Hoạt động bản đồ giá trị khoá (xem phần Các chiến lược dài hạn lưu vào bộ nhớ đệm liên tục), hãy sử dụng các hàm ở đây để truy xuất dữ liệu.

Để có mẫu KVM tuyệt vời, hãy xem https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.

Để được giới thiệu về mô-đun apigee-access và các tính năng khác của mô-đun này, xem Sử dụng quyền truy cập apigee mô-đun.

Phương thức

Các phương thức sau đây hoạt động trên cả KVM đã mã hoá và chưa mã hoá.


getKeyValueMap

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

Truy xuất KVM ở một phạm vi cụ thể (tổ chức, môi trường, API hoặc bản sửa đổi). Sau Đối tượng KVM được trả về. Hãy dùng các hàm getKeysget để trả về tên khoá hoặc một giá trị khoá cụ thể.

Các tham số:

  • kvm_name – Tên của KVM cần truy cập.
  • phạm vi – Phạm vi của KVM. Một trong số organization, environment, api, hoặc revision.
  • proxy_name – Đối với phạm vi api, tên của API proxy.

Trường hợp trả lại hàng:

Đối tượng KVM.

Ví dụ:

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

Nếu bạn đặt scope thành api, thì bắt buộc phải có thông số thứ ba – tên của proxy API. Ví dụ:

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

getKeys

var kvmKeys = apigee.getKeys(function(err, keys_array);

Trả về một mảng chứa tên của mọi khoá trong KVM.

Các tham số:

  • callback: (Bắt buộc) Hàm callback sử dụng hai thông số:
    • Đối tượng Lỗi nếu thao tác không thành công.
    • Một đối tượng (keys_array trong ví dụ trên) đại diện cho một mảng tên khoá KVM.

Trường hợp trả lại hàng:

Một mảng tên khoá KVM.

Ví dụ:

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

nhận

kvm.get('key', function(err, key_value));

Lấy giá trị của khoá KVM.

Các tham số:

  • key: (Bắt buộc) Một chuỗi xác định duy nhất mục đó trong bộ nhớ đệm.

  • callback: (Bắt buộc) Hàm callback sử dụng hai thông số:

    • Đối tượng Lỗi nếu thao tác không thành công.
    • Đối tượng chứa giá trị khoá KVM dưới dạng Chuỗi.

Ví dụ:

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