-
安装
npm install koa-static --save -
使用
const Koa = require("koa"); const app = new Koa(); const router = require("koa-router")(); const static = require("koa-static"); //这里比较重要, 设置静态资源放置的地址 /*app.use(static("资源所在的地址")) 例如 app.use(static("assets")); 例如设置相对路径asstes所在的文件夹*/ //__dirname 启动服务的js所在的目录 绝对路径 可以写多个 多个静态资源文件 //如果在static 里面找不到 就会去public 里面去找 app.use(static(__dirname + "static")); app.use(static(__dirname + "public")); //前端只需要 a标签就可以下载这个文件了 router.get("/xxx文件+后缀", (ctx) => { ctx.body = ctx; }) app.listen(3000, () => { //服务启动成功 }); app.use(router.routes()); app.use(router.allowedMethods()); -
static(root, option)接收两个参数root: 为路径,表示文件所在的相对路径 option: { maxage: 浏览器默认的最大缓存时长 max-age, 单位为毫秒,默认值为0,也就是不启用缓存。 hidden: 是否允许传输隐藏的文件,默认为false, 不传输。 index: 默认的文件名,默认值为index.html。 defer: 是否推迟响应,如果为true, koa-static 将会咋其他中间件执行完成之后在执行。 gzip: 如果客户端支持gzip压缩且资源文件后缀为.gz, 则进行gzip压缩,默认为true, 也就是支持gzip压缩。 setHeaders: 设置请求头函数,格式为: fn(res, path, stats)。 extensions: 当资源匹配不到的时候。根据传入的数组参数依次进行匹配,返回匹配到的第一个资源。 }