您正在查看 Apigee Edge 說明文件。
查看 Apigee X 說明文件。 資訊
簡介
本主題說明如何使用 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); });
方法
套用
修改 Quota 物件的設定。您可以使用這個方法增加或減少配額、變更時間間隔,以及進行其他設定。
使用方法
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 物件:
- identifier (字串,必要):配額值區的專屬 ID。實際上,可能是應用程式 ID、IP 位址或使用者名稱。
- timeUnit (字串,必要):配額值區在重設前的累計時間長度。有效值為「分鐘」、「小時」、「天」、「週」和「月」。
- allow (數字,必要):配額值區的最大值。這個值會與目前值結合,以傳回配額是否成功。
- interval (數字,選用):結合「timeUnit」,決定配額重設前的時間長度。預設值為 1。請調高數值,以便允許「兩小時」、「三週」等配額。
- weight (數字,選用):要增加配額的值。預設值為 1。
(2) 第二個引數是包含兩個引數的回呼函式:
- 如果無法提高配額,第一個引數是 Error 物件,如果作業成功,則會未定義。
- 第二個是包含下列欄位的物件:
- used (數字):配額值區目前的值。
- allowed (數字):超過配額之前的配額值區最大值。相同的值是在要求物件中以「allow」傳遞。
- isAllowed (布林值):如果配額中還有空間,前提是「used」小於或等於「allowed」。
- expiryTime (長):配額值區重設時的時間戳記,以 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'); } }
重設
如要將配額重設為零,請呼叫配額.reset()。這個方法需要兩個參數:-
含有以下欄位的 JSON 物件:
- identifier (字串,必要):配額值區的專屬 ID。實際上可能是應用程式 ID、IP 位址或使用者名稱。
- timeUnit (字串,必要):配額值區在重設前的累積時間長度。有效值為「分鐘」、「小時」、「天」、「週」和「月」。
- interval (數字,選用):結合「timeUnit」,決定配額重設前的時間長度。預設值為 1。請調高這個值以允許重設時間,例如「2 小時」、「三週」等。
-
回呼函式:
- 如果重設失敗,回呼會將 Error 物件做為第一個參數。
進階配額用途
建立配額時,您可以加入選用的「選項」物件。這個物件含有一個選用參數:- syncInterval (數字,選填):分散式配額實作在網路中同步處理自身狀態的秒數。預設值為 10 步。