diff --git a/bin/cli.js b/bin/cli.js index 3c358a7..81630b8 100755 --- a/bin/cli.js +++ b/bin/cli.js @@ -46,7 +46,6 @@ if (options.misc.help) { if (options.server['log-format']) { console.error(ansi.format(err.message, 'red')) } - }) const ws = localWebServer({ static: { @@ -65,6 +64,7 @@ if (options.misc.help) { log: { format: options.server['log-format'] }, + cacheControl: options.server.cacheControl, compress: options.server.compress, mime: options.server.mime, forbid: options.server.forbid, diff --git a/lib/local-web-server.js b/lib/local-web-server.js index 8d16a4f..60ffaa9 100644 --- a/lib/local-web-server.js +++ b/lib/local-web-server.js @@ -38,6 +38,7 @@ function localWebServer (options) { options = Object.assign({ static: {}, serveIndex: {}, + cacheControl: {}, spa: null, log: {}, compress: false, @@ -116,6 +117,13 @@ function localWebServer (options) { middlewareStack.push(etag()) } + /* cache-control headers */ + if (options.cacheControl) { + const cacheControl = require('koa-cache-control') + debug('Cache control', JSON.stringify(options.cacheControl)) + app.use(cacheControl(options.cacheControl)) + } + /* mime-type overrides */ if (options.mime) { debug('mime override', JSON.stringify(options.mime)) diff --git a/package.json b/package.json index ab2c8f4..13438ec 100644 --- a/package.json +++ b/package.json @@ -40,6 +40,7 @@ "koa": "^2.0.0", "koa-bodyparser": "^3.0.0", "koa-compose": "^3.1.0", + "koa-cache-control": "^1.0.0", "koa-compress": "^1.0.9", "koa-conditional-get": "^1.0.3", "koa-connect-history-api-fallback": "~0.3.0",