我有一些JS文件是由iframe中的页面加载的。在Chrome中,刷新似乎不会强制重新加载JS文件,这些文件正在相当定期地进行处理和修改。如果我直接浏览到JS文件,刷新,它似乎解决了这个问题。我尝试了在StackOverflow其他地方找到的以下修复,但似乎不起作用。有什么想法吗?这个应用程序是在Rails上开发的--也许我可以使用JS打包解决方案?
发布于 2011-06-06 08:46:58
before_filter :set_cache_buster
def set_cache_buster
response.headers["Cache-Control"] = "no-cache, no-store, max-age=0, must-revalidate"
response.headers["Pragma"] = "no-cache"
response.headers["Expires"] = "Fri, 01 Jan 1990 00:00:00 GMT"
end发布于 2011-06-06 08:59:00
您是否在使用资源帮助器javascript_include_tag?因为如果您只要配置具有以下内容:
config.action_controller.perform_caching = false您包含在该帮助程序中的每个JS都将附加一个避免缓存的时间戳。
示例:
<%= javascript_include_tag "prototype", "application", "effects" %>当perform_caching = true时,它将生成:
<script type="text/javascript" src="/javascripts/prototype.js"></script>
<script type="text/javascript" src="/javascripts/application.js"></script>
<script type="text/javascript" src="/javascripts/effects.js"></script>但是当perform_caching = false时,它将生成:
<script type="text/javascript" src="/javascripts/prototype.js?1197321216"></script>
<script type="text/javascript" src="/javascripts/application.js?1197321216"></script>
<script type="text/javascript" src="/javascripts/effects.js?1197321216"></script>我没有测试这段代码,它可能需要一些调整,我已经有一段时间没有接触到rails了。祝好运!
资料来源:
https://stackoverflow.com/questions/6246912
复制相似问题