static
static copied to clipboard
Static file server middleware
koa-static
Koa static file serving middleware, wrapper for koa-send
.
Installation
$ npm install koa-static
API
import Koa from "koa"; // CJS: require('koa');
import serve from "koa-static"; // CJS: require('koa-static')
const app = new Koa();
app.use(serve(root, opts));
-
root
root directory string. nothing above this root directory can be served -
opts
options object.
Options
-
maxage
Browser cache max-age in milliseconds. defaults to 0 -
hidden
Allow transfer of hidden files. defaults to false -
index
Default file name, defaults to 'index.html' -
defer
If true, serves afterreturn next()
, allowing any downstream middleware to respond first. -
gzip
Try to serve the gzipped version of a file automatically when gzip is supported by a client and if the requested file with .gz extension exists. defaults to true. -
brotli
Try to serve the brotli version of a file automatically when brotli is supported by a client and if the requested file with .br extension exists (note, that brotli is only accepted over https). defaults to true. - setHeaders Function to set custom headers on response.
-
extensions
Try to match extensions from passed array to search for file when no extension is sufficed in URL. First found is served. (defaults tofalse
)
Example
const serve = require("koa-static");
const Koa = require("koa");
const app = new Koa();
// $ GET /package.json
app.use(serve("."));
// $ GET /hello.txt
app.use(serve("test/fixtures"));
// or use absolute paths
app.use(serve(__dirname + "/test/fixtures"));
app.listen(3000);
console.log("listening on port 3000");
See also
- koajs/conditional-get Conditional GET support for koa
- koajs/compress Compress middleware for koa
-
koajs/mount Mount
koa-static
to a specific path
License
MIT