ruby - rails 怎么清除浏览器的资源缓存?

 顾旭东-夏天 发布于 2022-10-28 08:07

一rails项目 现在有一问题:我修改了这个swf文件的参数后。页面加载的是上一个swf文件,例如:
1:有一个 attack.swf 文件要在这个页面中预览
2:发现attack.swf中一些元素的位置x,y不正确。
3:于是我在页面中修改了这些参数,用程序打包后再次生成attack.swf
4:然后刷新见面。
这个时候我发现我修改的参数并没有起作用,国为浏览器加载的是上一个swf文件没有加载我新打包的文件。我清除浏览器的缓存后刷新就可以看到我新修改的swf文件。
问:有没有什么方法在rails 中清除这些缓存呢?

2 个回答
  • 去看看Rails的 Asset Pipeline http://guides.rubyonrails.org/asset_p...

    rails会在你的静态资源上加一个参数,attack.swf?t=12
    一旦检测到你的静态资源改变了,这个参数就会变attack.swf?t=13

    你也可以参考这种方式,原理就是浏览器认为你的这个资源是新的,然后会去重新加载进来。
    不然总是304 Not Modified,总浏览器缓存太麻烦了。

    2022-11-12 01:42 回答
  • 这个其实和RAILS没有关系。
    主要是网站的资源服务器的配置,可能是Apache/Nginx也可能是ruby自带的那些。
    可以模仿ruby处理资源文件的方式,如果swf改变了,就换个名字,避免缓存问题

    2022-11-12 01:42 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有