The content type of the response is set automatically from the extension of the file. Note that this is a terminal middleware handler function. If a file is served, then the rest of the handler functions will not be called. If a file was not found, however, the rest of the handlers are still called.
Arguments
- root
Root path of the served files. Everything under this directory is served automatically. Directory lists are not currently supports.
- set_headers
Callback function to call before a file is served.
See also
Other middleware:
mw_cgi()
,
mw_cookie_parser()
,
mw_etag()
,
mw_json()
,
mw_log()
,
mw_multipart()
,
mw_range_parser()
,
mw_raw()
,
mw_text()
,
mw_urlencoded()
Examples
root <- system.file(package = "webfakes", "examples", "static", "public")
app <- new_app()
app$use(mw_static(root = root))
app
#> <webfakes_app>
#> routes:
#> use *
#> fields and methods:
#> all(path, ...) # add route for *all* HTTP methods
#> delete(path, ...) # add route for DELETE
#> engine(ext, engine) # add template engine for file extension
#> head(path, ...) # add route for HEAD
#> listen(port) # start web app on port
#> patch(path, ...) # add route for PATCH
#> post(path, ...) # add route for POST
#> put(path, ...) # add route for PUT
#> use(...) # add middleware
#> locals # app-wide shared data
#> # see ?webfakes_app for all methods