| Safe Haskell | Safe-Inferred | 
|---|---|
| Language | Haskell2010 | 
Servant.Server.StaticFiles
Contents
Description
This module defines server-side handlers that lets you serve static files.
The most common needs for a web application are covered by
 serveDirectoryWebApp, but the other variants allow you to use
 different StaticSettings and serveDirectoryWith even allows you
 to specify arbitrary StaticSettings to be used for serving static files.
Synopsis
- serveDirectoryWebApp :: FilePath -> ServerT Raw m
- serveDirectoryWebAppLookup :: ETagLookup -> FilePath -> ServerT Raw m
- serveDirectoryFileServer :: FilePath -> ServerT Raw m
- serveDirectoryEmbedded :: [(FilePath, ByteString)] -> ServerT Raw m
- serveDirectoryWith :: StaticSettings -> ServerT Raw m
- serveDirectory :: FilePath -> ServerT Raw m
Documentation
serveDirectoryWebApp :: FilePath -> ServerT Raw m Source #
Serve anything under the specified directory as a Raw endpoint.
type MyApi = "static" :> Raw server :: Server MyApi server = serveDirectoryWebApp "/var/www"
would capture any request to /static/<something> and look for
 <something> under /var/www.
It will do its best to guess the MIME type for that file, based on the extension, and send an appropriate Content-Type header if possible.
If your goal is to serve HTML, CSS and Javascript files that use the rest of the API
 as a webapp backend, you will most likely not want the static files to be hidden
 behind a /static/ prefix. In that case, remember to put the serveDirectoryWebApp
 handler in the last position, because servant will try to match the handlers
 in order.
Corresponds to the defaultWebAppSettings StaticSettings value.
serveDirectoryWebAppLookup :: ETagLookup -> FilePath -> ServerT Raw m Source #
Same as serveDirectoryWebApp, but uses webAppSettingsWithLookup.
serveDirectoryFileServer :: FilePath -> ServerT Raw m Source #
Same as serveDirectoryWebApp, but uses defaultFileServerSettings.
serveDirectoryEmbedded :: [(FilePath, ByteString)] -> ServerT Raw m Source #
Uses embeddedSettings.
serveDirectoryWith :: StaticSettings -> ServerT Raw m Source #
Alias for staticApp. Lets you serve a directory
   with arbitrary StaticSettings. Useful when you want
   particular settings not covered by the four other
   variants. This is the most flexible method.
Deprecated
serveDirectory :: FilePath -> ServerT Raw m Source #
Deprecated: Use serveDirectoryFileServer instead
Same as serveDirectoryFileServer. It used to be the only
   file serving function in servant pre-0.10 and will be kept
   around for a few versions, but is deprecated.