在我的网络应用程序中,每个用户都将拥有一张个人资料图片,这些图片存储在 Amazon s3 中。如果用户登录,我需要显示该图像,并且该图像将保留在他输入的所有页面的侧栏中。一旦他登录,我是否可以缓存图像,这样我就不需要每次都从 Amazon s3 返回?当他再次更新图像时,我需要清除缓存。
最佳答案
您可以使用标准 Http Caching为此。
您应该设置 Cache-Control
和/或 expires
标题取决于您的需要。
所有主要的 S3 客户端都支持设置这些 header ,或者您可以使用 S3 API 或 SDK/库等进行设置。
如果图像发生变化,为了重新下载图像,您可以在 url 中添加一个查询字符串。 例如
http://mypath/myfile.ext?v=1
http://mypath/myfile.ext?v=2
关于ruby-on-rails - 缓存动态图像 rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5081790/