Stai visualizzando la documentazione di Apigee Edge.
Vai alla
documentazione di Apigee X. informazioni
Introduzione
Questo argomento spiega come utilizzare apigee-access
per accedere al servizio delle quote Apigee Edge da un'applicazione Node.js. Con apigee-access, puoi applicare e reimpostare i valori di quota.
Esempio
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({ identifier: 'Foo', allow: 10, timeUnit: 'hour' }, function(err, result) { console.log('Quota applied: %j', result); });
Metodi
applicare
Modifica le impostazioni di un oggetto Quota. Utilizza questo metodo per aumentare o diminuire la quota, modificare gli intervalli di tempo e creare altre configurazioni.
Utilizzo
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({parameters}, callback);
Esempio
var apigee = require('apigee-access'); var quota = apigee.getQuota(); // Apply a quota of 100 requests per hour quota.apply({ identifier: 'Foo', timeUnit: 'hour', allow: 100 }, quotaResult); function quotaResult(err, r) { if (err) { console.error('Quota failed'); } }
Parametri
Il metodo apply() accetta due parametri, un oggetto e una funzione:
(1) Il primo parametro è un oggetto JSON con i seguenti campi:
- identifier (stringa, obbligatorio): un identificatore univoco del bucket di quota. In pratica, potrebbe essere un ID applicazione, un indirizzo IP o un nome utente.
- timeUnit (stringa, obbligatorio): per quanto tempo si accumulerà il bucket di quota fino alla reimpostazione. I valori validi sono "minuto", "ora", "giorno", "settimana" e "mese".
- allow (numero, obbligatorio): il valore massimo per il bucket di quota. Questo valore verrà combinato con il valore attuale per verificare se la quota ha avuto esito positivo.
- interval (numero, facoltativo): combinato con "timeUnit" per determinare quanto tempo deve trascorrere prima della reimpostazione della quota. Il valore predefinito è 1. Imposta un valore maggiore per consentire quote come "due ore", "tre settimane" e così via.
- weight (numero, facoltativo): il valore per incrementare la quota. Il valore predefinito è 1.
(2) Il secondo argomento è una funzione di callback con questi due argomenti:
- Il primo argomento è un oggetto Error se la quota non può essere aumentata o non è definita se l'operazione è riuscita.
- Il secondo è un oggetto che contiene i seguenti campi:
- used (numero): il valore attuale del bucket di quota.
- allowed (numero): il valore massimo del bucket di quota prima che la quota sia considerata superata. Nell'oggetto della richiesta è stato trasmesso lo stesso valore di "allow".
- isAllowed (booleano): se nella quota è rimasto spazio, è true purché "used" sia inferiore o uguale a "allowed".
- expiryTime (long): il timestamp, in millisecondi dal formato del 1970, al momento della reimpostazione del bucket di quota.
- timestamp (long): il timestamp in cui è stata aggiornata la quota.
Esempio
var apigee = require('apigee-access'); var quota = apigee.getQuota(); // Apply a quota of 100 requests per hour quota.apply({ identifier: 'Foo', timeUnit: 'hour', allow: 100 }, quotaResult); // Apply a quota of 500 requests per five minutes quota.apply({ identifier: 'Bar', timeUnit: 'minute', interval: 5, allow: 500 }, quotaResult); // Increment the quota by a value of 10 quota.apply({ identifier: 'Foo', timeUnit: 'hour', allow: 100, weight: 10 }, quotaResult); function quotaResult(err, r) { if (err) { console.error('Quota failed'); } }
reimpostare
Per reimpostare la quota su zero, chiama quota.reset(). Questo metodo richiede due parametri:-
Un oggetto JSON con i seguenti campi:
- identifier (stringa, obbligatorio): un identificatore univoco del bucket di quota. In pratica, potrebbe essere un ID applicazione, un indirizzo IP o un nome utente.
- timeUnit (stringa, obbligatorio): per quanto tempo si accumulerà il bucket di quota fino al momento della reimpostazione. I valori validi sono "minuto", "ora", "giorno", "settimana" e "mese".
- interval (numero, facoltativo): combinato con "timeUnit" per determinare quanto tempo deve trascorrere prima della reimpostazione della quota. Il valore predefinito è 1. Imposta un valore maggiore per consentire tempi di reimpostazione, ad esempio "due ore", "tre settimane" e così via.
-
Una funzione di callback:
- Se la reimpostazione non va a buon fine, il callback prende un oggetto Errore come primo parametro.
Caso d'uso avanzato delle quote
Quando crei una quota, puoi includere un oggetto "options" facoltativo. Questo oggetto ha un parametro facoltativo:- syncInterval (numero, facoltativo): il numero di secondi durante i quali l'implementazione della quota distribuita sincronizza il proprio stato nella rete. Il valore predefinito è 10.