1 Star 1 Fork 0

黄马云/koa-context

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
2.koa.js 1.06 KB
一键复制 编辑 原始数据 按行查看 历史
qqjay2017 提交于 2019-12-01 22:49 . koa-views
const Koa = require('./koa')
const app = new Koa;
//分逻辑来处理请求
//next表示执行下一个函数
//洋葱模型
const sleep = () => {
return new Promise((resolve, reject) => {
setTimeout(() => {
console.log("sleep")
resolve()
}, 1000);
})
}
app.use(async (ctx, next) => {
console.log(1)
/**
* 需要等待 需要+ await
* 为了保证最外层的中间件 可以等待里层的中间件执行完毕 await next()/ return next()
*/
await next()
console.log(2)
ctx.body = "hello"
})
app.use(async (ctx, next) => {
console.log(3)
await sleep() //需要等待一秒 才能给body赋值
await next()
ctx.body = "world"
console.log(4)
})
app.use(async (ctx, next) => {
console.log(5)
await next()
console.log(6)
})
/**
* 这些中间件 会组合成一个大函数 = Promise 并且执行 执行完会采用ctx的结果
*/
app.on('error',function(e){
console.log(e,"-------------------------")
})
app.listen(3000)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
JavaScript
1
https://gitee.com/hhhsir/koa-context.git
git@gitee.com:hhhsir/koa-context.git
hhhsir
koa-context
koa-context
master

搜索帮助