Koa2 初始 洋葱模型指向顺序中间件 Koa2与express的关系简单示例

介绍

文档

  • 基于Nodejs的web开发框架
  • 由 Express原班人马打造

在这里插入图片描述

特点
  • 支持async/await
  • 洋葱模型的中间件
    在这里插入图片描述

快速上手

安装
node7.6版本之上

npm i koa

创建app.js文件

// 1创建koa对象
const Koa = require('koa')
const app = new Koa()

// 2编写响应函数(中间件)
// ctx: 上下文 ctx.request ctx.response
// next 下一个中间件引用  返回promis对象
app.use((ctx, next)=>{
    // 获取请求地址
    console.log("请求地址:",ctx.request.url)
    // 响应内容
    ctx.response.body = "hello fff"
})
// 3监听端口
app.listen(3000,()=>{
    console.log('启动---localhost:3000访问')
})

next() 返回promise 可以结合async await
启动服务器

node app.js

中间件特点

  • koa对象通过use方法加入中间件
  • 一个中间件就是一个函数
  • 中间件的执行顺序符合洋葱模型
// 2编写响应函数(中间件)
// ctx: 上下文 ctx.request ctx.response
// next 下一个中间件引用 
app.use((ctx, next)=>{ // 第一层中间件
    // // 获取请求地址
    // console.log("请求地址:",ctx.request.url)
    // // 设置响应内容
    ctx.response.body = {name:'xx'}
    console.log('第一层中间件-1')
    next()
    console.log('第一层中间件-2')
})

// 第二层中间件
app.use((ctx, next)=>{
    console.log('第二层中间件')
    next()
    console.log('第二层中间件-2')
})

// 第三层中间件
app.use((ctx, next)=>{
    console.log('第三层中间件')
})


// 3监听端口
app.listen(3000,()=>{
    console.log('启动---')
})

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值