从缓存中获取值

适用于:所有 API 管理层级

使用 cache-lookup-value 策略,可以通过密钥执行缓存查找,并返回缓存的值。 密钥的值可以是任意字符串,通常使用策略表达式来提供密钥。

注意

此策略必须已设置相应的在缓存中存储值策略。

重要

内置缓存是易失性的,由同一 API 管理服务中同一区域的所有单元共享。

注意

按照策略声明中提供的顺序设置策略的元素和子元素。 详细了解如何设置或编辑 API 管理策略

策略语句

<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,表示可使用内置的 API 管理缓存
- external 使用外部缓存,如- 中所述;
- prefer-external 如果外部缓存已配置,则使用外部缓存,否则使用内部缓存。

不允许使用策略表达式。
prefer-external
default-value 在缓存密钥查找未命中的情况下,会分配给变量的值。 如果未指定此属性,则会分 null。 允许使用策略表达式。 null
key 要在查找中使用的缓存密钥值。 允许使用策略表达式。 不适用
variable-name 在查找成功的情况下,会向其分配查找值的上下文变量的名称。 如果查找未命中,则不会设置该变量。 不允许使用策略表达式。 空值

使用情况

示例

<cache-lookup-value
    key="@("userprofile-" + context.Variables["enduserid"])"
    variable-name="userprofile" />

有关此策略的详细信息和示例,请参阅 Azure API 管理中的自定义缓存

后续步骤

有关使用策略的详细信息,请参阅: