Mengakses peta nilai kunci di Node.js

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

Anda dapat menggunakan modul apigee-access untuk mendapatkan data peta nilai kunci (KVM) Edge dari dalam aplikasi Node.js. Metode pengambilan KVM ini merupakan alternatif untuk menggunakan kebijakan Operasi Peta Nilai Kunci untuk mengambil data KVM dalam alur proxy API.

KVM menyediakan persistensi jangka panjang dari key-value pair arbitrer yang dapat Anda ambil saat runtime. Misalnya, Anda dapat menyimpan nilai kuota, nilai masa berlaku token akses OAuth, dan nilai masa berlaku token refresh OAuth di KVM untuk setiap lingkungan deployment, lalu mengambil nilai dalam kode Anda.

Anda dapat membuat KVM di salah satu dari tiga cakupan: organization, environment, dan apiproxy. Misalnya, jika Anda membuat KVM di cakupan apiproxy untuk proxy "foo", hanya proxy "foo" yang dapat mengakses KVM; atau jika Anda membuat KVM di cakupan lingkungan "test", semua proxy API yang di-deploy di lingkungan "test" organisasi dapat mengakses KVM, tetapi tidak ada proxy yang di-deploy di lingkungan "prod" yang dapat mengaksesnya.

Setelah membuat KVM dengan Management API, UI pengelolaan, atau kebijakan Operasi Peta Nilai Kunci (lihat Pencadangan persistensi jangka panjang), gunakan fungsi di sini untuk mengambil data.

Untuk pola KVM yang bagus, lihat Pola untuk menyimpan nilai KVM dalam cache.

Untuk pengantar modul apigee-access dan fitur lainnya, lihat Menggunakan modul apigee-access.

Metode

Metode berikut berfungsi di KVM terenkripsi dan tidak terenkripsi.


getKeyValueMap

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

Mengambil KVM pada cakupan tertentu (organisasi, lingkungan, API, atau revisi). Setelah objek KVM ditampilkan, gunakan fungsi getKeys dan get untuk menampilkan nama kunci atau nilai kunci tertentu.

Parameter:

  • kvm_name - Nama KVM yang akan diakses.
  • scope - Cakupan KVM. Salah satu dari organization, environment, api, atau revision.
  • proxy_name - Untuk scope api saja, nama proxy API.

Hasil:

Objek KVM.

Contoh:

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

Jika Anda menyetel scope ke api, maka parameter ketiga diperlukan - nama proxy API. Contoh:

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

getKeys

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

Menampilkan array yang berisi nama semua kunci dalam KVM.

Parameter:

  • callback: (Wajib) Fungsi callback menggunakan dua parameter:
    • Objek Error jika operasi gagal.
    • Objek (keys_array dalam contoh di atas) yang merepresentasikan array nama kunci KVM.

Hasil:

Array nama kunci KVM.

Contoh:

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

dapatkan

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

Mendapatkan nilai kunci KVM.

Parameter:

  • key: (Wajib) String yang secara unik mengidentifikasi item dalam cache.

  • callback: (Wajib) Fungsi callback menggunakan dua parameter:

    • Objek Error jika operasi gagal.
    • Objek yang berisi nilai kunci KVM sebagai String.

Contoh:

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