You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在AWS API Gateway中为特定REST API GET请求禁用缓存?

针对REST类型AWS API Gateway特定GET请求禁用缓存的实现方案

完全可以实现,无需禁用整个阶段缓存或迁移API,以下是几种实用方案:

方案1:利用缓存键参数实现"伪禁用"

  • 针对目标GET方法,在其集成请求的缓存键参数中,添加一个每次请求都会变化的参数(比如时间戳、随机值)。例如配置自定义参数cache-buster,通过映射模板自动生成$context.requestTimeEpoch作为该参数的值。
  • 原理:每次请求的缓存键会因动态参数不同而无法命中已有缓存,等同于禁用该请求的缓存。

方案2:通过响应头强制禁用缓存

  • 在目标GET方法的集成响应中,添加Cache-Control响应头,设置值为no-cache, no-store, must-revalidate。
  • 原理:该头会告知API Gateway和客户端不缓存任何响应内容,每次请求都会直接触发后端调用。

方案3:使用阶段变量+条件缓存

  1. 在API的阶段配置中创建阶段变量(比如disable_cache),默认值设为false。
  2. 进入目标GET方法的缓存设置,将缓存启用条件设为$stageVariables.disable_cache != 'true'。
  3. 针对该方法单独覆盖阶段变量值为true,其他方法保持默认。
  • 原理:通过条件判断仅对目标请求禁用缓存,其余请求正常使用阶段缓存配置。

内容的提问来源于stack exchange,提问作者317 3535

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 15:24:53