您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件。 info
簡介
本主題說明如何使用 apigee-access 從 Node.js 應用程式存取 Apigee Edge 配額服務。您可以使用 apigee-access 套用及重設配額值。
範例
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); });
方法
適用
修改配額物件的設定。使用這個方法可增加或減少配額、變更時間間隔,以及進行其他設定。
用量
var apigee = require('apigee-access'); var quota = apigee.getQuota(); quota.apply({parameters}, callback);
範例
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'); } }
參數
apply() 方法會採用兩個參數:物件和函式:
(1) 第一個參數是具有下列欄位的 JSON 物件:
- ID (字串,必填):配額值區的專屬 ID。實際上可能是應用程式 ID、IP 位址或使用者名稱。
- timeUnit (字串,必填):配額儲存區累積配額的時間長度,之後配額就會重設。有效值為「minute」、「hour」、「day」、「week」和「month」。
- allow (數字,必要):配額儲存區的最大值。這個值會與目前的值合併,以傳回配額是否成功。
- 間隔 (數字,選用):與「timeUnit」合併使用,判斷配額重設前經過的時間長度。預設值為 1。設為較大的值,即可允許「兩小時」、「三週」等配額。
- weight (數字,選用):配額的遞增值。預設值為 1。
(2) 第二個引數是回呼函式,包含下列兩個引數:
- 如果配額無法遞增,第一個引數是 Error 物件;如果作業成功,則為 undefined。
- 第二個是包含下列欄位的物件:
- used (數字):配額值區的目前值。
- allowed (數字):配額視為超出前,配額值區的最大值。要求物件中傳遞的「allow」值相同。
- isAllowed (布林值):配額是否還有空間,只要「已用」小於或等於「允許」,即為 true。
- expiryTime (long):配額儲存區重設的時間戳記,以 1970 年以來的毫秒數表示。
- timestamp (long):配額更新的時間戳記。
範例
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'); } }
重設
如要將配額重設為零,請呼叫 quota.reset()。這個方法會採用兩個參數:-
包含下列欄位的 JSON 物件:
- identifier (字串,必填):配額儲存區的專屬 ID。實際上可能是應用程式 ID、IP 位址或使用者名稱。
- timeUnit (字串,必填):配額儲存區累積配額的時間長度,之後配額就會重設。有效值為「minute」、「hour」、「day」、「week」和「month」。
- 間隔 (數字,選用):與「timeUnit」搭配使用,可決定配額重設前經過的時間長度。預設值為 1。設為較大的值,即可允許重設時間,例如「兩小時」、「三週」等。
-
回呼函式:
- 如果重設失敗,回呼會將 Error 物件做為第一個參數。
進階配額用途
建立配額時,您可以加入選用的「options」物件。這個物件有一個選用參數:- syncInterval (數字,選用):分散式配額實作在網路上同步處理狀態的秒數。預設值為 10。