node.js web框架koa的使用

koa框架使用的步骤:



输入网址后出现两层打印,第一个打印是针对我们输入网址按下回车发送的请求,第二个打印是针于浏览器自己会发起的关于网站图标获取的请求

第二成中间件调用next()之后的结果(这个next相当于写的下一个中间件 ):

加上async和await的打印结果:

代码实现:

javascript 复制代码
// 1.创建一个koa对象
const Koa = require("koa");
const app = new Koa();
// 2.编写响应函数(中间件)
// ctx: 上下文,web容器,ctx.request ctx.response
// next; 下一个中间件,下一层中间件是否能够得到执行取决于这个next这个函数有没有被调用
// 第一层中间件
app.use((ctx, next) => {
  console.log("第一层中间件...1");
  ctx.response.body = "hello world";
  next();
  console.log("第一层中间件...2");
});
// 第二层中间件
app.use(async (ctx, next) => {
  console.log("第二层中间件...1");
  const ret = await next();
  console.log(ret);
  console.log("第二层中间件...2");
});
// 这个next相当于写的下一个中间件
// 第三层中间件
app.use((ctx, next) => {
  console.log("第三层中间件...1");
  // next();
  console.log("第三层中间件...2");
  return "i love the dog";
});
// 3.绑定一个端口号
app.listen(3000);
相关推荐
Larry_Yanan12 分钟前
QML学习笔记(五十二)QML与C++交互:数据转换——时间和日期
开发语言·c++·笔记·qt·学习·ui·交互
TL滕19 分钟前
从0开始学算法——第二天(时间、空间复杂度)
数据结构·笔记·学习·算法
歪歪10023 分钟前
详细介绍一下“集中同步+分布式入库”方案的具体实现步骤
开发语言·前端·分布式·后端·信息可视化
C++chaofan1 小时前
MyBatis - Plus学习笔记
java·spring boot·笔记·后端·mysql·架构·mybatis
Larry_Yanan2 小时前
QML学习笔记(五十三)QML与C++交互:数据转换——序列类型与 JavaScript 数组的转换
c++·笔记·学习
我命由我123453 小时前
Photoshop - Photoshop 工具栏(20)混合器画笔工具
经验分享·笔记·学习·ui·职场和发展·职场发展·photoshop
搞机械的假程序猿4 小时前
普中51单片机学习笔记-点亮第一个LED
笔记·学习·51单片机
wgego5 小时前
做题笔记BUU (XSS-Lab)(1-14)
前端·笔记·xss
摇滚侠6 小时前
Spring Boot3零基础教程,响应式编程,前景提要,笔记108
java·spring boot·笔记
xiaohe06016 小时前
🥳 Uni ECharts 2.1 发布:正式支持鸿蒙,零成本迁移、全平台兼容、跨端开发零负担!
vue.js·uni-app·echarts