我目前正在使用wai-middleware-static为我的服务器提供自定义页面。但是,我看到我的服务器favicon.ico
在每次页面加载时都收到了对等的请求,而且我的每一个网络字体也收到了请求,所以我决定检查响应头上的缓存设置,发现没有。
wai-middleware-static 返回一个Middleware
值,我认为这是对在每个请求上运行的中间件提供的函数的回调。有没有办法修改它以添加响应标头以告诉浏览器缓存结果?
我目前正在使用wai-middleware-static为我的服务器提供自定义页面。但是,我看到我的服务器favicon.ico
在每次页面加载时都收到了对等的请求,而且我的每一个网络字体也收到了请求,所以我决定检查响应头上的缓存设置,发现没有。
wai-middleware-static 返回一个Middleware
值,我认为这是对在每个请求上运行的中间件提供的函数的回调。有没有办法修改它以添加响应标头以告诉浏览器缓存结果?
多个中间件可以通过正常的函数组合链接在一起,例如:
middleware1 . middleware2
因此,如果您有一个将缓存设置添加到响应中的中间件,则应该进行设置。可能对您有所帮助的基本结构是:
addCacheSettings :: Middleware
addCacheSettings innerApp request = do
innerResponse <- innerApp request
return $ myHelper innerResponse
where
myHelper :: Response -> Response
myHelper = error "Your logic here"