適用於:所有 APIM 層
使用 cache-lookup-value 原則以執行依索引鍵的快取查閱,並傳回快取的值。 金鑰可以具有任意字串值,而且通常會使用原則運算式來提供。
注意
此原則必須有對應的儲存快取中的值原則。
重要
內建快取具揮發性,且相同區域的所有單位共用相同的 API 管理服務。
注意
請依照原則陳述式中提供的順序,來設定原則的元素和子元素。 深入了解如何設定或編輯 APIM 原則。
原則陳述式
<cache-lookup-value key="cache key value"
default-value="value to use if cache lookup resulted in a miss"
variable-name="name of a variable looked up value is assigned to"
caching-type="prefer-external | external | internal" />
屬性
| 屬性 | 描述 | 是必要欄位 | 預設 |
|---|---|---|---|
| caching-type | 選擇下列屬性值: - internal,使用內建的 APIM 快取,- external,使用外部快取,如在 Azure API 管理中使用外部 Azure Redis 快取中所述,- prefer-external。如有設定,則使用外部快取;否則使用內部快取。不允許使用原則運算式。 |
否 | prefer-external |
| default-value | 當快取索引鍵查閱沒有結果時,要指派給變數的值。 如果未指定此屬性,則會指派 null。 允許使用原則運算式。 |
否 | null |
| Key | 要在查閱中使用的快取索引鍵值。 允許使用原則運算式。 | 是的 | N/A |
| 變數名稱 | 查閱成功時,要將查閱到的值指派到之內容變數的名稱。 如果查閱結果遺漏,則不會設定變數。 不允許使用原則運算式。 | 是的 | N/A |
使用方式
使用量注意事項
- API 管理 只會快取 HTTP GET 要求的回應。
- 此原則只能在原則區段中使用一次。
- 原則片段內不支援此原則。
- 建議您在任何快取查閱之後立即設定 速率限制 原則 (或依 金鑰的速率限制 原則)。 這有助於防止您的後端服務在快取無法使用時過載。
範例
此範例顯示如何使用 cache-lookup-value 原則從快取擷取使用者設定檔。 快取查閱的索引鍵是使用原則運算式來建構,該原則運算式會結合字串與環境定義變數的 enduserid 值。
請參閱 cache-store-value 範例,將使用者設定檔儲存在快取中。
<cache-lookup-value
key="@("userprofile-" + context.Variables["enduserid"])"
variable-name="userprofile" />
<rate-limit calls="10" renewal-period="60" />
如需此原則的詳細資訊和範例,請參閱在 Azure API 管理中自訂快取。
相關原則
相關內容
如需使用原則的詳細資訊,請參閱:
- 教學課程:轉換及保護 API
- 原則參考,取得原則陳述式及其設定的完整清單
- 原則運算式
- 設定或編輯原則
- 重複使用原則設定
- 原則程式碼片段存放庫 (英文)
- 原則遊樂場存放庫
- Azure API 管理 原則工具組
- 取得 Copilot 協助以建立、說明及疑難排解原則