5

我目前正在使用wai-middleware-static为我的服务器提供自定义页面。但是,我看到我的服务器favicon.ico在每次页面加载时都收到了对等的请求,而且我的每一个网络字体也收到了请求,所以我决定检查响应头上的缓存设置,发现没有。

wai-middleware-static 返回一个Middleware值,我认为这是对在每个请求上运行的中间件提供的函数的回调。有没有办法修改它以添加响应标头以告诉浏览器缓存结果?

4

1 回答 1

4

多个中间件可以通过正常的函数组合链接在一起,例如:

middleware1 . middleware2

因此,如果您有一个将缓存设置添加到响应中的中间件,则应该进行设置。可能对您有所帮助的基本结构是:

addCacheSettings :: Middleware
addCacheSettings innerApp request = do
    innerResponse <- innerApp request
    return $ myHelper innerResponse
  where
    myHelper :: Response -> Response
    myHelper = error "Your logic here"
于 2013-08-13T15:10:49.593 回答