在 APIs中維護 REST API 的使用計劃 - Amazon API Gateway

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 APIs中維護 REST API 的使用計劃

維護用量計劃涉及監控指定時段內已使用和剩餘的配額,以及如有需要,依指定的量擴充剩餘配額。下列程序說明如何監控配額。

AWS Management Console
監控已使用及剩餘的配額
  1. 在以下網址登入 API Gateway 主控台:https://console.aws.amazon.com/apigateway

  2. 在 API Gateway 主導覽窗格中,選擇用量計劃

  3. 選取用量計劃。

  4. 選擇關聯的 API 金鑰索引標籤,以查看每個金鑰在期間內剩餘的請求數。

  5. (選用) 選擇匯出用量資料,然後選擇日期和日期。接著選擇 JSONCSV 作為匯出的資料格式,然後選擇匯出

    以下範例顯示匯出的檔案。

    { "px1KW6...qBazOJH": [ [ 0, 5000 ], [ 0, 5000 ], [ 0, 10 ] ] }

    範例中的用量資料顯示某 API 用戶端自 2016 年 8 月 1 日到 2016 年 8 月 3 日的每日用量資料,依 API 金鑰 (px1KW6...qBazOJH) 識別。每個每日用量資料都會顯示已使用和剩餘的配額。在這個範例中,訂閱者並未用完任何分配的配額,而 API 擁有者或管理員已在第三天將剩餘的配額從 5000 降至 10。

下列程序說明如何修改配額。

擴充剩餘的配額
  1. 在以下網址登入 API Gateway 主控台:https://console.aws.amazon.com/apigateway

  2. 在 API Gateway 主導覽窗格中,選擇用量計劃

  3. 選取用量計劃。

  4. 選擇關聯的 API 金鑰索引標籤,以查看每個金鑰在期間內剩餘的請求數。

  5. 選取 API 金鑰,然後選擇授予用量延伸

  6. 輸入剩餘的請求配額的數量。您可以針對您的用量計劃期間增加剩餘的請求數,也可以減少剩餘的請求數。

  7. 選擇更新配額

AWS CLI

下列 update-usage-plan 範例會在用量計劃中新增、移除或修改方法層級限流設定。

注意

請務必將 us-east-1 變更為您 API 的適當區域值。

若要為調節個別的資源和方法新增或取代速率限制:

aws apigateway --region us-east-1 update-usage-plan --usage-plan-id planId --patch-operations op="replace",path="/apiStages/apiId:stage/throttle/resourcePath/httpMethod/rateLimit",value="0.1"

若要為調節個別的資源和方法新增或取代爆量限制:

aws apigateway --region us-east-1 update-usage-plan --usage-plan-id planId --patch-operations op="replace",path="/apiStages/apiId:stage/throttle/resourcePath/httpMethod/burstLimit",value="1"

若要為個別的資源和方法移除方法層級調節設定:

aws apigateway --region us-east-1 update-usage-plan --usage-plan-id planId --patch-operations op="remove",path="/apiStages/apiId:stage/throttle/resourcePath/httpMethod",value=""

要移除 API 的所有方法層級調節設定:

aws apigateway --region us-east-1 update-usage-plan --usage-plan-id planId --patch-operations op="remove",path="/apiStages/apiId:stage/throttle ",value=""

此處為使用 Pet Store 範例 API 的範例:

aws apigateway --region us-east-1 update-usage-plan --usage-plan-id planId --patch-operations op="replace",path="/apiStages/apiId:stage/throttle",value='"{\"/pets/GET\":{\"rateLimit\":1.0,\"burstLimit\":1},\"//GET\":{\"rateLimit\":1.0,\"burstLimit\":1}}"'
REST API

呼叫 usageplan:update 以維護用量計劃。