03.静态文件访问

106 阅读1分钟

这是一个系列课程,从0到1,实现一个简易node版的serverless服务 本篇为 03-静态资源访问

介绍

很多时候,我们项目中需要将一些静态文件直接发送给浏览器看 这个时候,我们可以在项目中将指定的目录作为静态资源来处理 此处用到的插件为koa-statickoa-mount

安装

npm i koa-static koa-mount

koa-static 的使用

const koaStatic = require('koa-static')
// 将public中的文件作为静态文件访问
app.use(koaStatic(path.join(__dirname,'/public')))
// 这样也行,注意 join就是单纯的字符串拼接 resolve是从当前目录中往public
app.use(koaStatic(path.resolve(__dirname,'public')))

注意以前的代码存在一个问题:就是没有虚拟静态路径 localhost:8080/111.jpg 可以访问 但是如果我想要localhost:8080/static/111.jpg 经过 static 路径后面的才能映射到 public目录中的静态文件,是实现不了的 需要使用 koa-mount插件

koa-mount 的使用

增加虚拟路由映射到静态目录中 下方的static就是虚拟路由,public就是真实的静态资源的目录

const koaMount = require('koa-mount')
app.use(koaMount('static',koaStatic(path.join(__dirname,'/public'))))

此时就能实现localhost:8080/static/111.jpg 访问到 public 中的 111.jpg文件了

参考链接

参考链接