目录

一、简单介绍

1.1、快速开始 (这里省略了安装的过程)

const Koa = require('koa')
const app = new Koa() app.use( async ( ctx ) => {
ctx.body = 'hello koa2'
}) app.listen(3000)

1.2、源码简单解析

源码文件主要包含了 application.js 、context.js 、request.js 、response.js

  • application.js 是 Koa 的入口文件封装了 ctx、request、response, 以及核心的中间件处理流程
  • context.js 处理应用上下文,里面直接封装部分request.js和response.js的方法
  • request.js 处理http请求
  • response.js 处理http响应

1.3、中间件的简单开发

这里主要介绍如何使用 async/await 在 koa2 中进行中间件的开发

middleware 在 koa2 中如何使用

const Koa = require('koa')
const logger = require('./middleware/logger-async') const app = new Koa() app.use(logger()) app.use(ctx => {
ctx.body = 'hello middleware'
}) app.listen(3000)

如何编写一个简单的 middleware 中间件

function log(ctx) {
console.log( ctx.method, ctx.header.host + ctx.url )
} module.exports = function() {
return async function(ctx, next) {
log(ctx)
await next()
}
} // 对,就是这样,so easy

二、 路由

原生 JS 实现 koa 的 router

经过思考

最新文章

  1. Excel基础
  2. Elasticsearch1.7到2.3升级实践总结
  3. 原创:phoenix4.6.0连接hbase1.1.2(不使用phoenix-4.6.0-HBase-1.1-client.jar)
  4. [转]论acm与泡妞
  5. Python QRCODE
  6. DP(记忆化搜索) + AC自动机 LA 4126 Password Suspects
  7. cocos2d-html5 让图层阻挡下层触碰事件
  8. ASP.NET后台JS弹框使前台页面样式丢失 解决办法
  9. <Stackoverflow> 声望和节制
  10. sql server日期时间转字符串(转)
  11. Tomcat相关目录及配置文件总结
  12. PHP学习笔记二十三【This】
  13. java学习之实现文件的复制
  14. AJAX请求真的不安全么?谈谈Web安全与AJAX的关系。
  15. 【django之form表单】
  16. 语句in
  17. JVM堆内存监测的一种方式,性能调优依旧任重道远
  18. CSharp遗传算法求解背包问题
  19. Mysql 索引迁移策略
  20. jenkins内部分享ppt

热门文章

  1. dotnet 数组自动转基类数组提示 Co-variant array conversion 是什么问题
  2. 【Kubernetes】容器集群管理常用命令笔记
  3. C# string和String的区别
  4. 0005 表格table
  5. org.apache.subversion.javahl.ClientException: Item is not readable 解决办法
  6. tomcat+jdk安装部署
  7. Python学习3月8号【python编程 从入门到实践】---》笔记(1)
  8. IntelliJ IDEA安装教程及使用方法
  9. webpack 实时编译typescript与scss
  10. kubelet--help-v1.15.4