我认为这是一个非常容易的,但我似乎无法做到正确。基本上,我试图使用Rack中间件将默认的Cache-Control标头设置为由我的Sinatra应用程序提供的所有响应。它看起来像机架:: responseHeaders响应应该能够做的正是我需要的,但我得到尝试使用语法时的错误在我rackup文件证明here:Rack :: ResponseHeaders用于Sinatra
use Rack::ResponseHeaders do |headers|
headers['X-Foo'] = 'bar'
headers.delete('X-Baz')
end
我能得到机架::缓存成功的工作方式如下:
use Rack::Cache,
:default_ttl => 3600
不过,这并不能达到完全是我想要的输出,而机架:: responseHeaders响应给出了头的细粒度控制。
仅供参考,我的网站托管在Heroku上,并且在我的.gems清单中指定了所需的Rack Gems。
谢谢!
更新:做一些研究之后,它看起来像第一个问题是,机架:: responseHeaders响应并不在其中安装机架的contrib(0.9.2)的版本中。我会先看看。