Wyświetlasz dokumentację Apigee Edge.
Otwórz dokumentację
Apigee X. info
Wprowadzenie
Z tego artykułu dowiesz się, jak używać apigee-access do uzyskiwania dostępu do usługi limitów Apigee Edge
z aplikacji Node.js. Za pomocą apigee-access możesz stosować i
resetować wartości limitów.
Przykład
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); });
Metody
apply
Modyfikuje ustawienia obiektu limitu. Użyj tej metody, aby zwiększyć lub zmniejszyć limit, zmienić przedziały czasu i wprowadzić inne konfiguracje.
Wykorzystanie
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({parameters}, callback);
Przykład
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'); } }
Parametry
Metoda apply() przyjmuje 2 parametry: obiekt i funkcję:
(1) Pierwszy parametr to obiekt JSON z tymi polami:
- identifier (ciąg znaków, wymagany): unikalny identyfikator zasobnika limitu. W praktyce może to być identyfikator aplikacji, adres IP lub nazwa użytkownika.
- timeUnit (ciąg znaków, wymagany): jak długo zasobnik limitu będzie się kumulować, zanim zostanie zresetowany. Prawidłowe wartości to "minute", "hour", "day", "week" i "month."
- allow (liczba, wymagany): maksymalna wartość zasobnika limitu. Ta wartość zostanie połączona z bieżącą wartością, aby określić, czy limit został przekroczony.
- interval (liczba, opcjonalny): w połączeniu z "timeUnit" określa, jak długo będzie trwać limit, zanim zostanie zresetowany. Wartość domyślna to 1. Ustaw większą wartość, aby zezwolić na limity takie jak „2 godziny”, „3 tygodnie” itp.
- weight (liczba, opcjonalny): wartość, o którą należy zwiększyć limit. Wartość domyślna to 1.
(2) Drugi argument to funkcja wywołania zwrotnego z tymi 2 argumentami:
- Pierwszy argument to obiekt Error, jeśli nie można zwiększyć limitu , lub undefined, jeśli operacja się powiodła.
- Drugi argument to obiekt zawierający te pola:
- used (liczba): bieżąca wartość zasobnika limitu.
- allowed (liczba): maksymalna wartość zasobnika limitu, po której limit zostanie uznany za przekroczony. Ta sama wartość została przekazana jako „allow” w obiekcie żądania.
- isAllowed (wartość logiczna): czy w limicie jest jeszcze miejsce w limicie – wartość true, dopóki „used” jest mniejsze lub równe „allowed”.
- expiryTime (długi): sygnatura czasowa w milisekundach od 1970 r., kiedy zasobnik limitu zostanie zresetowany.
- timestamp (długi): sygnatura czasowa, kiedy limit został zaktualizowany.
Przykład
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'); } }
reset
Aby zresetować limit do zera, wywołaj quota.reset(). Ta metoda przyjmuje 2 parametry:-
Obiekt JSON z tymi polami:
- identifier (ciąg znaków, wymagany): unikalny identyfikator zasobnika limitu. W praktyce może to być identyfikator aplikacji, adres IP lub nazwa użytkownika.
- timeUnit (ciąg znaków, wymagany): jak długo zasobnik limitu będzie się kumulować zanim zostanie zresetowany. Prawidłowe wartości to „minute”, „hour”, „day”, „week” i „month”.
- interval (liczba, opcjonalny): w połączeniu z "timeUnit" określa jak długo będzie trwać limit, zanim zostanie zresetowany. Wartość domyślna to 1. Ustaw większą wartość, aby zezwolić na czasy resetowania takie jak „2 godziny”, „3 tygodnie” itp.
-
Funkcja wywołania zwrotnego:
- Jeśli resetowanie się nie powiedzie, funkcja wywołania zwrotnego przyjmuje jako pierwszy parametr obiekt Error.
Zaawansowany przypadek użycia limitu
Podczas tworzenia limitu możesz uwzględnić opcjonalny obiekt „options”. Ten obiekt ma 1 opcjonalny parametr:- syncInterval (liczba, opcjonalny): liczba sekund, przez które rozproszona implementacja limitu synchronizuje swój stan w sieci. Wartość domyślna to 10.