所以,我想向我的服务服务器添加两个 wai 中间件。一种用于提供静态文件的中间件,一种用于日志记录的中间件。
我定义了我的 api ( router
),这就是我启动服务器的方式:
webServer :: IO ()
webServer = run 80 (middleware $ router)
这就是我如何定义我的middleware
:
middleware :: Application -> Application
middleware = do
logStdoutDev
staticPolicy $ addBase "static"
现在,如果我把它logStdoutDev
放在第一位,我就不能提供静态文件,但是如果我把它staticPolicy
放在第一位,我就可以提供静态文件,但是我失去了记录事件的能力(基本上它们被忽略了)。
问题真的是,如何wai
在servant中正确组合中间件。