Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. info
Giriş
Bu konuda, bir Node.js uygulamasından Apigee Edge kota hizmetine erişmek için apigee-access
'ün nasıl kullanılacağı açıklanmaktadır. apigee-access ile kota değerlerini uygulayabilir ve sıfırlayabilirsiniz.
Örnek
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); });
Yöntemler
uygulama
Quota nesnesinin ayarlarını değiştirir. Kotayı artırmak veya azaltmak, zaman aralıklarını değiştirmek ve başka yapılandırmalar yapmak için bu yöntemi kullanın.
Kullanım
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({parameters}, callback);
Örnek
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'); } }
Parametreler
apply() yöntemi, bir nesne ve bir işlev olmak üzere iki parametre alır:
(1) İlk parametre, aşağıdaki alanlara sahip bir JSON nesnesidir:
- identifier (dize, gerekli): Kota paketinin benzersiz tanımlayıcısı. Uygulama kimliği, IP adresi veya kullanıcı adı olabilir.
- timeUnit (dize, gerekli): Kota paketinin, sıfırlanana kadar birikeceği süre. Geçerli değerler: "dakika", "saat", "gün", "hafta" ve "ay".
- allow (sayı, zorunlu): Kota grubu için maksimum değer. Bu değer, kotanın başarılı olup olmadığının döndürülmesi için geçerli değerle birleştirilir.
- interval (sayı, isteğe bağlı): Kotanın sıfırlanmasından ne kadar süre önce belirleneceğini belirlemek için "timeUnit" ile birleştirilir. Varsayılan değer 1'dir. "İki saat", "üç hafta" gibi kotalara izin vermek için daha büyük bir değere ayarlayın.
- weight (sayı, isteğe bağlı): Kotanın artırılacağı değer. Varsayılan değer, 1'dir.
(2) İkinci bağımsız değişken, aşağıdaki iki bağımsız değişkeni içeren bir geri çağırma işlevidir:
- Kota artırılamıyorsa ilk bağımsız değişken Hata nesnesidir veya işlem başarılıysa tanımlanmamış olur.
- İkincisi, aşağıdaki alanları içeren bir nesnedir:
- kullanıldı (sayı): Kota paketinin mevcut değeri.
- allowed (sayı): Kotanın aşıldığı kabul edilmeden önce kota paketinin maksimum değeri. Aynı değer, istek nesnesinde "allow" olarak iletildi.
- isAllowed (boole): Kotada yer varsa "kullanılan" "izin verilen"den az veya buna eşit olduğu sürece doğrudur.
- expiryTime (long): Kota paketinin sıfırlanacağı, 1970'den itibaren milisaniye cinsinden zaman damgası.
- zaman damgası (uzun): Kotanın güncellendiği zaman damgası.
Örnek
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
Kotayı sıfıra sıfırlamak için quota.reset() işlevini çağırın. Bu yöntem iki parametre alır:-
Şu alanları içeren bir JSON nesnesi:
- tanımlayıcı (dize, zorunlu): Kota paketinin benzersiz bir tanımlayıcısı. Uygulama kimliği, IP adresi veya kullanıcı adı olabilir.
- timeUnit (dize, zorunlu): Kota grubu sıfırlanana kadar ne kadar süre boyunca biriktirileceğini belirtir. Geçerli değerler: "dakika", "saat", "gün", "hafta" ve "ay".
- interval (sayı, isteğe bağlı): Kotanın sıfırlanmasından ne kadar süre önce belirleneceğini belirlemek için "timeUnit" ile birleştirilir. Varsayılan değer 1'dir. "İki saat", "üç hafta" gibi sıfırlama zamanlarına izin vermek için daha büyük bir değere ayarlayın.
-
Geri çağırma işlevi:
- Sıfırlama başarısız olursa geri çağırma işlevi ilk parametre olarak bir Error nesnesi alır.
Gelişmiş kota kullanım alanı
Kota oluştururken isteğe bağlı bir "seçenekler" nesnesi ekleyebilirsiniz. Bu nesnenin bir isteğe bağlı parametresi vardır:- syncInterval (sayı, isteğe bağlı): Dağıtılmış kota uygulamasının durumunu ağ genelinde senkronize ettiği saniye sayısı. Varsayılan değer 10'dur.