可以在Rails 3.2中基于每个请求禁用机架缓存吗?

Mat*_*ham 5 ruby streaming caching rack ruby-on-rails

我一直试图在Heroku上使用Rails 3.2进行流式传输(请参阅我的帖子:Rails 3.2流式传输).

我得出的结论是,机架缓存导致了这个问题.config.middleware.delete(Rack::Cache)在production.rb中使用它来禁用它似乎可以解决它.显然,这会为我的整个应用禁用它.

我只希望它禁用一个流式传输请求(在管理端,并且不经常使用).这可能吗?为了一个小的(但需要的)管理功能而失去缓存是一个很大的失败.

非常感谢!!!

编辑:我试图将标题设置为不缓存有问题的操作,但Rack :: Cache仍然导致流失败.完全禁用它是迄今为止我找到的唯一解决方案.

Mat*_*ham 2

我最终不需要禁用机架缓存。只需将其添加self.response.headers['Last-Modified'] = Time.now.ctime.to_s 到我的回复中即可。