我在Amazon S3中保存了静态文件,但一直遇到Amazon缓存这些文件的问题。当我更新/覆盖静态文件时,希望自动显示最新版本,而不是等待缓存过期。您有什么建议吗?
CacheControl: "no-cache"
S3无法做到立即提交,因为它被设计成最终一致性。
如果你总是想要最新的文件,那么你需要更改文件名。
我正在使用Javascript SDK,并通过将GetObject()
的ResponseCacheControl
参数设置为"no-cache"
来解决问题。
设置 Cache-Control: "no-cache"
并没有生效。我甚至检查了每次上传对象时是否存在元数据,但它仍然被缓存并显示旧的图像。
我认为现在唯一的解决方案是生成一个随机的 2 位长度字符串并将其附加到您上传的图像名称的末尾。