練習 - 對 API 要求進行節流
在 API 管理中,您可以使用原則來實作節流 (速率限制)。
您應該記得,您的政府機關想要防止濫用其 API,例如大量的要求。
在此單元中,您將了解如何對呼叫人口普查 API 的頻率設定限制。 在此範例中,此限制會全域套用至您所有的人口普查 API 端點。
套用速率限制原則
若要在 API 管理內套用節流原則,請遵循下列步驟:
使用您在先前的練習中使用的相同帳戶登入 Azure 入口網站。
在 Azure 入口網站功能表上,或從 [首頁] 頁面,選取 [所有資源],然後選取您的 API 管理執行個體。
在左側功能表窗格的 [API] 底下,選取 [API],然後在中間窗格中選取 [人口普查資料]。
在頂部功能表列選取 [設計] 索引標籤,然後選取 [所有作業]。
在 [輸入處理] 區段中,選取 </> 圖示。 XML 原則編輯器隨即出現。
使用下列程式碼來取代整個
<inbound>
項目:<inbound> <rate-limit calls="3" renewal-period="15" /> <base /> </inbound>
選取 [儲存]。
您的原則檔案應該包含這三個原則,與下列程式碼類似:
<policies>
<inbound>
<rate-limit calls="3" renewal-period="15" />
<base />
</inbound>
<backend>
<base />
</backend>
<outbound>
<set-header name="x-powered-by" exists-action="delete" />
<redirect-content-urls />
<base />
</outbound>
<on-error>
<base />
</on-error>
</policies>
注意
在此範例中,每個區段內的原則順序並不重要。
測試原則
現在讓我們看看節流原則是否正常運作:
再次選取 [人口普查資料],然後在頂部功能表列中,選取 [測試] 索引標籤。
選取 [GetLatestCensus] 作業,然後在資料列中選取 [傳送] 三次。
第三次傳送要求時,您應該會收到 429 錯誤 (要求太多) 回應: