如何从 Snap monad 提供静态文件?

How to serve static files from the Snap monad?

我的这个 Snap 网站有一个顶级位置:

snapSite :: Snap ()
snapSite = do
    ifTop myHomeHandler

除此之外,只有当请求路径以“.css”或“.txt”结尾时,我才能提供静态文件?

我注意到 Snap.Internal.Core 中有一个 pathWith 函数可以工作,但我不确定如何将它放入上面的 Snap monad。

"Snap.Util.FileServe [c]包含 Web 处理程序以提供目录中的文件。"

路线看起来像这样:

("/static", serveDirectory "static_directory_name")

要微调此过程,您还可以使用自己的 DirectoryConfigserveDirectoryWith