头图

【koa2】用中间件koa-static-router 搭建静态资源服务器,实现多级路由加载静态资源

源码及使用说明 Git仓库

安装

npm install koa-static-router

Usage

  • 单个路由
const static = require('koa-static-router');
 app.use(
   static({
     dir,  //静态资源目录对于相对入口文件index.js的路径
     route   //路由命名
   })
 )
  • 多个路由

选择多个路由时,请确保路由长度相同
'/static/' - >路由长度 = 1
'/static/image1/' - >路由长度 =2

const static = require('koa-static-router');

app.use(
  static([
    {
      dir,     //静态资源目录对于相对入口文件index.js的路径
      router    //路由命名
    },{
      dir,
      router  
    }
  ])
)

Demo

git clone
cd koa-static-router
npm install 
npm start
  1. 访问 localhost:3000/public/image/dir/1.png

  1. 访问 localhost:3000/static/image/dir/2.png

const Koa = require('koa')
const app = new Koa()
const static = require('koa-static-router');


// 单个路由
// app.use(static({
//   dir:'public',
//   router:'/static/'     //路由长度 =1
// }))


//多个路由
app.use(static([
    {
        dir:'public',    //静态资源目录对于相对入口文件index.js的路径
        router:'/public/image/'   //路由命名   路由长度 =2
    },{
        dir:'static',   //静态资源目录对于相对入口文件index.js的路径
        router:'/static/image/'    //路由命名  路由长度 =2
    }
]))

app.use( async ( ctx ) => {
  ctx.body = 'hello world'
})

app.listen(3000, () => {
  console.log('build success')
})

Devin前端技术分享
前端技术专栏
30 声望
2 粉丝
0 条评论
推荐阅读
route-resource-preload 拆包,尽最大努力减少首屏幕加载资源,并提供优质的用户体验
route-resource-preload🚀 专注于不影响用户最佳体验的同时,提升应用首屏加载速度,灵感来自NextJS的预加载.gif 效果图正常懒加载.gifroute-resource-preload 预加载.gif从上图可以发现,route-resource-preload ...

daivon阅读 118

封面图
从零搭建 Node.js 企业级 Web 服务器(十五):总结与展望
总结截止到本章 “从零搭建 Node.js 企业级 Web 服务器” 主题共计 16 章内容就更新完毕了,回顾第零章曾写道:搭建一个 Node.js 企业级 Web 服务器并非难事,只是必须做好几个关键事项这几件必须做好的关键事项就...

乌柏木75阅读 7.1k评论 16

从零搭建 Node.js 企业级 Web 服务器(一):接口与分层
分层规范从本章起,正式进入企业级 Web 服务器核心内容。通常,一块完整的业务逻辑是由视图层、控制层、服务层、模型层共同定义与实现的,如下图:从上至下,抽象层次逐渐加深。从下至上,业务细节逐渐清晰。视图...

乌柏木45阅读 8.6k评论 6

从零搭建 Node.js 企业级 Web 服务器(二):校验
校验就是对输入条件的约束,避免无效的输入引起异常。Web 系统的用户输入主要为编辑与提交各类表单,一方面校验要做在编辑表单字段与提交的时候,另一方面接收表单的接口也要做足校验行为,通过前后端共同控制输...

乌柏木35阅读 6.7k评论 10

从零搭建 Node.js 企业级 Web 服务器(五):数据库访问
回顾 从零搭建 Node.js 企业级 Web 服务器(一):接口与分层,一块完整的业务逻辑是由视图层、控制层、服务层、模型层共同定义与实现的,控制层与服务层实现了业务处理过程,模型层定义了业务实体并以 对象-关系...

乌柏木34阅读 5.1k评论 9

2022大前端总结和2023就业分析
我在年前给掘金平台分享了《2022年热点技术盘点》的前端热点,算是系统性的梳理了一下我自己对前端一整年的总结。年后,在知乎上看到《前端的就业行情怎么样?》,下面都是各种唱衰前端的论调,什么裁员,外包化...

i5ting27阅读 2.3k评论 4

封面图
从零搭建 Node.js 企业级 Web 服务器(十三):断点调试与性能分析
Node.js 官方提供了断点调试机制,出于安全性考虑默认为关闭状态,可以通过 node 参数 --inspect 或 --inspect-brk 开启,配合 IDE 能够非常方便地调试代码,本章就上一章已完成的项目 licg9999/nodejs-server-ex...

乌柏木31阅读 4.2k评论 9

30 声望
2 粉丝
宣传栏