nodejs后台系列--第四篇--koa(二)
一,koa-combine-routers
1,初始化项目
npm init -y
2,安装koa相关依赖
npm install koa koa-router koa-body @koa/cors koa-json -S
3,需要学习的中间件koa-combine-routers
它的作用是可以分业务地划分路由文件。
https://www.npmjs.com/package/koa-combine-routers
新建src目录,并新建文件index.js
安装这个中间件为生产过程中的依赖
npm install koa-combine-routers -S
4,按功能模块划分路由模块
然后index.js中引入使用
代码地址:
https://gitee.com/ling-xu/koa-1
二,一个安全方面的中间件koa-helmat
https://www.npmjs.com/package/koa-helmet
他的作用是增加一个安全的头部,让默认情况下的node服务器更加安全。
使用方法就是npm安装后,app.use即可:
三,托管静态资源的中间件koa-static
1,npm i koa-static
2,新建静态资源文件夹public
3,编写代码
4,运行服务器后,就可以在浏览器中访问静态资源了:
需要注意的是,根路径就是这个public文件夹了:
nodejs后台系列--第四篇--koa(二)相关推荐
- 深入理解javascript作用域系列第四篇——块作用域
前面的话 尽管函数作用域是最常见的作用域单元,也是现行大多数javascript最普遍的设计方法,但其他类型的作用域单元也是存在的,并且通过使用其他类型的作用域单元甚至可以实现维护起来更加优秀.简洁的 ...
- UR机器人装箱姿态_UR10 RG2机械臂手臂+RealsenseZR300 机器人手眼标定 系列第四篇
UR10 RG2机械臂手臂+RealsenseZR300 机器人手眼标定 系列第四篇 发布时间:2018-09-18 17:43, 浏览次数:1180 , 标签: UR RG RealsenseZR ...
- element ui 前台模板_SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(二):引入 element-ui 定义基本页面显示...
前提: (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y ...
- 互联网大脑的情绪,智商和梦境-互联网神经学系列第四篇
这是互联网神经学系列的第四篇文章"互联网大脑的情绪.智商和梦境,互联网神经心理学" 1.互联网神经心理学的提出 我们在互联网神经学系列的第三篇文章中详细介绍了互联网大脑的架构和运行 ...
- 微信商城开发系列第四篇 不写代码玩转微信公众号
本系列文章转载自:CSDN博客walkingmanc的专栏 为什么叫不写代码玩转微信公众号呢? 我们大家都知道,微信公众号有两种模式,一种是编辑模式,一种是开发模式.所谓的不写代码玩转微信公众号,其实 ...
- Redis系列-第四篇持久化与事务
一.持久化 Redis是一个内存数据库,为了保证数据的持久性,它提供了两种持久化方案: RDB方式(默认) AOF方式 持久化功能有效地避免因进程退出造成的数据丢失问题, 当下次重启时利用之前持久化的 ...
- 深入理解DOM事件机制系列第四篇——事件模拟
前面的话 事件是网页中某个特别的瞬间,经常由用户操作或通过其他浏览器功能来触发.但实际上,也可以使用javascript在任意时刻来触发特定的事件,而此时的事件就如同浏览器创建的事件一样.本文将详细介 ...
- Tekton系列之理论篇【二】
作者 | 乔克 博客 | https://www.coolops.cn 公众号 | 运维开发故事(ID:mygsdcsf) 上一篇文章我们介绍了Tekton的安装并且做了简单的测试,但是我们并不知其所 ...
- 记一次完整的RPG Maker MV游戏逆向系列第四篇
前言 阅读本篇前请先看之前的几篇分析噢,不然可能会缺失一些前置知识 这篇还是讲 RPG Maker MV 的游戏分析,主要是如何分析一种通过 GameusQuestSystems.js 的加密手段 工 ...
- 前端学PHP之面向对象系列第四篇——关键字
http://www.cnblogs.com/xiaohuochai/p/6063776.html 转载于:https://www.cnblogs.com/Lomio/p/6121479.html
最新文章
- 据说这是个电子元器件采购的春天,我们该如何把握机遇?
- keras 以图搜图
- Oracle编程入门经典 第3章 建立以及管理用户和表
- python得到windows自启动列表
- 曾经成功的敏捷团队为什么失败?
- 博客园是个大金矿,管理员不挖掘有些可惜:给博客园提一些双赢的建议
- git 忽略__pycache___容易被忽略的 Python 命令行参数
- javascript 用函数语句和表达式定义函数的区别详解
- 沟通技巧系列 - 积极和移情倾听
- Windows进程同步之事件内核对象(Event)
- LeetCode 56. 合并区间(合并区间+排序)
- Java大数类自我需要掌握的
- 电脑怎么设置扬声器播放麦克风的声音
- 杀猪、打狗、护牛、赛马、放虎——几种管理方法
- ctf-web入门-php特性
- Extjs处理客户复制三位一撇到numberfield里面
- 如何批量用扫描仪扫描照片_如何用手机扫描旧照片
- java字符串与数值型相互转换
- smartsvn的常见问题
- SpringBoot2.0Web开发实例(一)WebJars静态资源
热门文章
- springboot中得注解_SpringBoot 中的基本注解
- 医学图像之DICOM格式解析
- python dynamic array
- Hive环境搭建及测试
- 【计算机视觉】【并行计算与CUDA开发】GPU硬编码
- SPOJ VLATTICE Visible Lattice Points 莫比乌斯反演
- ubuntu14.04 server 安装docker
- linux下不是很完美的提高android虚拟机的启动速度
- MySQL索引实现、MySQL索引原理、索引下推、索引覆盖、索引失效
- 【jenkins 异常】org.eclipse.jgit.errors.InvalidObjectIdException: Invalid id xxxxx