【发布时间】:2011-12-19 10:23:58
【问题描述】:
我的资产目录中有一个 .js.erb 文件。这会读取一些特定于语言环境的配置。
但是,当底层配置更改时,新文件不会提供给我的浏览器。我得到 304 未修改。
如果我通过添加空格来更改 .js.erb 文件,则新文件会正确提供。每次添加配置时都这样做会很痛苦。
有没有办法配置 rails 只是为了不缓存这个特定的文件?
感谢您的任何建议。
编辑:Done a bit more reading on the asset pipeline
“在服务器启动后的第一个请求上编译和缓存资产。Sprockets 设置了一个必须重新验证的 Cache-Control HTTP 标头以减少后续请求的请求开销——在这些请求上,浏览器会收到 304(未修改)响应.
如果清单中的任何文件在请求之间发生了变化,服务器将响应一个新的编译文件。"
所以这里的问题是第一个请求被缓存了——这是一个动态的 javascript 文件。也许是防止它被缓存以内联javascript的唯一方法?
【问题讨论】:
标签: ruby-on-rails ruby-on-rails-3.1 asset-pipeline