2013-08-13 2 views
5

현재 내 서버의 사용자 정의 페이지를 제공하기 위해 wai-middleware-static을 사용 중입니다. 그러나, 나는 내 서버가 모든 페이지로드시에 favicon.ico 등등에 대한 요청을 받고있는 것을 보았습니다. 따라서 응답 헤더에서 캐시 설정을 확인하기로 결정 했으므로 아무 것도 없었습니다.Wai 미들웨어의 응답 헤더 사용자 정의

wai-middleware-static은 모든 요청에 ​​대해 실행되는 미들웨어에서 제공하는 기능에 대한 콜백이라고 생각합니다. Middleware 값을 반환합니다. 결과를 캐시하도록 브라우저에 알려주는 응답 헤더를 추가하는 방법이 있습니까?

답변

3

여러 미들웨어는 정상적인 기능 조성물을 서로 연결 할 수 있습니다 당신은 응답을 캐시 설정을 추가 미들웨어가 있다면 예컨대 :

middleware1 . middleware2 

는 그래서, 당신은 설정해야합니다. 다음과 같은 기본 구조가 도움이 될 수 있습니다.

addCacheSettings :: Middleware 
addCacheSettings innerApp request = do 
    innerResponse <- innerApp request 
    return $ myHelper innerResponse 
    where 
    myHelper :: Response -> Response 
    myHelper = error "Your logic here"