<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Introduction
Cette rubrique explique comment utiliser apigee-access
pour accéder au quota Apigee Edge
à partir d'une application Node.js. Avec apigee-access, vous pouvez appliquer et
réinitialiser les valeurs de quota.
Exemple
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); });
Méthodes
appliquer
Modifie les paramètres d'un objet Quota. Utilisez cette méthode pour incrémenter ou décrémenter le quota, modifier les intervalles de temps et effectuer d'autres configurations.
Utilisation
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({parameters}, callback);
Exemple
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'); } }
Paramètres
La méthode apply() utilise deux paramètres, un objet et une fonction:
(1) Le premier paramètre est un objet JSON comportant les champs suivants:
- identifier (chaîne, obligatoire): valeur unique identifiant du bucket de quota. En pratique, il peut s'agir d'un ID application, d'une adresse IP ou nom d'utilisateur.
- timeUnit (chaîne, obligatoire): durée du quota. s'accumulera jusqu'à sa réinitialisation. Les valeurs valides sont "minute" « heure », « jour », « semaine », et « mois ».
- allow (nombre, obligatoire): valeur maximale de dans le bucket de quota. Cette valeur sera combinée à la valeur actuelle pour indiquer si le a atteint son objectif.
- interval (nombre, facultatif): combiné avec les "timeUnit" pour déterminer le délai de réinitialisation du quota. La valeur par défaut est 1. Définir sur une valeur plus élevée pour autoriser des quotas comme "two hours", « trois semaines », et ainsi de suite.
- weight (nombre, facultatif): valeur d'incrémenter le quota. La valeur par défaut est 1.
(2) Le deuxième argument est une fonction de rappel arguments:
- Le premier argument est un objet Error si le quota ne peut pas être incrémentée ou non définie si l'opération a réussi.
- Le second est un objet qui contient les champs suivants:
<ph type="x-smartling-placeholder">
- </ph>
- used (nombre): valeur actuelle de l'attribut bucket de quota.
- allowed (nombre): valeur maximale de l'attribut bucket de quota avant que le quota soit considéré comme dépassé. La même valeur a été transmise "autoriser" dans l'objet "request".
- isAllowed (booléen): s'il reste de l'espace. dans le quota -- true tant que "used" (utilisé) est inférieur ou égal à "autorisé".
- expiryTime (long): code temporel, au format millisecondes depuis le format 1970, date à laquelle le bucket de quota sera réinitialisé.
- timestamp (long): horodatage auquel le quota a été mis à jour.
Exemple
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'); } }
réinitialiser
Pour remettre le quota à zéro, appelez quota.reset(). Cette méthode nécessite deux paramètres:<ph type="x-smartling-placeholder">
- </ph>
-
Un objet JSON contenant les champs suivants:
<ph type="x-smartling-placeholder">
- </ph>
- identifier (chaîne, obligatoire): identifiant unique du quota. bucket. En pratique, il peut s'agir d'un ID application, d'une adresse IP ou d'un nom d'utilisateur.
- timeUnit (chaîne, obligatoire): durée d'accumulation du bucket de quota jusqu'à ce qu'elle soit réinitialisée. Les valeurs valides sont "minute" « heure », « jour », « semaine », et « mois ».
- interval (nombre, facultatif): combiné avec "timeUnit" pour déterminer le délai de réinitialisation du quota. La valeur par défaut est 1. Définissez une valeur plus élevée pour permettre la réinitialisation. des heures comme « deux heures », « trois semaines », et ainsi de suite.
-
Une fonction de rappel:
<ph type="x-smartling-placeholder">
- </ph>
- Le rappel utilise un objet Error (erreur) comme premier paramètre si la réinitialisation échoue.
Cas d'utilisation de quotas avancés
Lors de la création d'un quota, vous pouvez inclure une option "options" facultative . Cet objet comporte un paramètre facultatif: <ph type="x-smartling-placeholder">- </ph>
- syncInterval (nombre, facultatif): nombre de secondes pendant lesquelles la l'implémentation de quotas distribués synchronise son état sur le réseau. La valeur par défaut est 10.