Você está vendo a documentação do Apigee Edge.
Acesse a
documentação da Apigee X. informações
É possível usar o módulo apigee-access
para receber dados do mapa de chave-valor do Edge (KVM)
de dentro de um aplicativo Node.js. Esse método de recuperação de KVM é uma alternativa ao uso da política de operações de mapa de chave-valor para recuperar dados KVM em um fluxo de proxy de API.
As KVMs fornecem persistência de longo prazo de pares de chave-valor arbitrários que podem ser recuperados no ambiente de execução. Por exemplo, é possível armazenar valores de cota, valores de expiração do token de acesso OAuth e valores de expiração do token OAuth de atualização em uma KVM para cada ambiente de implantação e, em seguida, recuperar os valores no seu código.
É possível criar uma KVM em um destes três escopos: organization
,
environment
e apiproxy
. Por exemplo, se você criar uma KVM no escopo apiproxy para o proxy "foo", somente o proxy "foo" poderá acessar a KVM. Se você criar uma KVM no escopo do ambiente "test", todos os proxies de API implantados no ambiente "test" de uma organização poderão acessar a KVM, mas nenhum dos proxies implantados no ambiente "prod" poderá acessá-la.
Depois de criar uma KVM com a API de gerenciamento, a IU de gerenciamento ou a política de operações do mapa de chave-valor (consulte Armazenamento em cache de persistência de longo prazo), use estas funções para recuperar os dados.
Para conferir um ótimo padrão de KVM, consulte https://community.apigee.com/content/kbentry/24906/a-pattern-for-caching-kvm-values.html.
Para uma introdução ao módulo apigee-access
e a outros recursos dele,
consulte Como usar o módulo
apigee-access.
Métodos
Os métodos a seguir funcionam em KVMs criptografadas e não criptografadas.
- getKeyValueMap() (em inglês)
- getKeys()
- get() (link em inglês)
getKeyValueMap
var kvm = apigee.getKeyValueMap('kvm_name', 'scope'); var kvm = apigee.getKeyValueMap('kvm_name', 'api', 'proxy_name');
Recupera uma KVM em um escopo específico (organização, ambiente, API ou revisão). Depois que o
objeto KVM for retornado, use as funções getKeys
e get
para retornar os
nomes ou um valor de chave específico.
Parâmetros:
- kvm_name: o nome da KVM a ser acessada.
- scope: o escopo da KVM. Uma destas:
organization
,environment, api,
ourevision
. - proxy_name: apenas para o proxy_name da api, o nome do proxy da API.
Retorna:
Um objeto KVM.
Exemplo:
var apigee = require('apigee-access'); var kvm = apigee.getKeyValueMap('my_kvm', 'environment');
Se você definir scope como api, um terceiro parâmetro será necessário: o nome do proxy de API. Exemplo:
var kvm = apigee.getKeyValueMap('my_kvm', 'api', 'myApiProxy');
getKeys
var kvmKeys =
apigee.getKeys(function(err, keys_array);
Retorna uma matriz contendo os nomes de todas as chaves na KVM.
Parâmetros:
-
callback
(obrigatório): a função de callback usa dois parâmetros:- Um objeto Erro se a operação falhar.
- Um objeto (
keys_array
no exemplo acima) que representa a matriz de nomes de chaves KVM.
Retorna:
Uma matriz de nomes de chaves KVM.
Exemplo:
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 });
acessar
kvm.get('key', function(err,
key_value));
Recebe o valor de uma chave KVM.
Parâmetros:
-
key
(obrigatório): uma string que identifica exclusivamente o item no cache. -
callback
(obrigatório): a função de callback usa dois parâmetros:- Um objeto Erro se a operação falhar.
- O objeto que contém o valor da chave KVM como uma string.
Exemplo:
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); });