gpt4 book ai didi

azure - 如何使用 Azure API 管理和 Azure Redis 缓存检查缓存响应的期限

转载 作者:行者123 更新时间:2023-12-02 08:21:31 25 4
gpt4 key购买 nike

我正在使用 Azure API 管理中的 API,该 API 具有用于存储响应的外部 Azure Redis 缓存实例。我想通过响应 header 了解缓存命中发生时缓存的响应有多陈旧。尽管这似乎是缓存的基本功能,但我似乎找不到任何解释如何实现此目的的资源或文档。最终,我希望我的前端能够显示“您的数据已存在 16 分钟”的效果,并让用户有机会同步最新数据(并在此过程中更新缓存)。

我尝试通过 APIM 策略查看可用的属性,但似乎没有任何相关内容。最坏的情况是,我可以在 APIM 端点的每个响应中包含一个 requestedAt 属性,这样当发生缓存命中时,我可以看到原始请求何时发出,但我宁愿通过 header 实现此功能如果可能的话。

编辑:维塔利下面的答案非常有效。对于那些好奇的人来说,这就是我现在的政策

<outbound>
<base />
<set-header name="Cached-At" exists-action="override">
<value>@(System.DateTime.Now.ToString())</value>
</set-header>
<cache-store duration="360" />
</outbound>

最佳答案

检查您在客户端收到的缓存响应,它可能已经包含“日期”或“上次修改时间”等 header ,如果这些 header 显示正确的日期 - 请使用它们。否则,如果您在 cache-store 之前使用 set-header 策略,您输入的值将存储在缓存中并在检索时返回,因此这可以用于添加缓存插入响应时间。

关于azure - 如何使用 Azure API 管理和 Azure Redis 缓存检查缓存响应的期限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68074192/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com