0

我正在使用回形针 gem 将图像上传到 S3 存储。它上传成功。

在我的应用程序中,用户可以更改他的个人资料照片。如果用户更改个人资料照片,则新图像将成功上传。问题是浏览器只会在上传后显示上一张照片。只有在按 ctrl + F5 强制刷新后才会显示新图像。

注意:图片是使用表单发布上传的。我想这与缓存有关,但我不知道在哪里可以更改我的代码。请帮我解决这个问题。谢谢。

4

1 回答 1

2

您使用图像对象的什么属性作为图像的属性src?如果您使用user.image.url(假设您有一个User模型并且 Paperclip 字段被调用image),那么 S3 上图像的 URL 应该在查询字符串中有一个数字,用于停止任何缓存,以便您立即看到更新的图像。例如,图像的 URL 应该从

http://s3.amazonaws.com/bucket/images/5/original/pic.gif?1250184309

http://s3.amazonaws.com/bucket/images/5/original/pic.gif?1250184348

这应该停止浏览器缓存图像。

于 2009-08-13T17:31:33.860 回答