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);
相关推荐
小满Autumn34 分钟前
MVVM Light 架构笔记:定位器、命令、消息与 IoC 实践
笔记·学习·架构·c#·上位机·mvvm
kobesdu2 小时前
【ROS2实战笔记-24】ROS2 Launch 实用技巧:条件逻辑与节点动态生成
笔记·ros·slam
小满Autumn2 小时前
CommunityToolkit.Mvvm 架构笔记:现代 MVVM、源生成器与工程化实践
笔记·架构·c#·.net·wpf·mvvm
DreamLife☼3 小时前
OpenBCI-实战五:脑电数据可视化仪表板
人工智能·机器学习·信息可视化·开源硬件·脑机接口·openbci
imDwAaY4 小时前
贝叶斯网络到粒子滤波Python算法实现 CS188 Proj4 学习笔记
网络·人工智能·笔记·python·学习·算法
咸甜适中5 小时前
rust语言学习笔记Trait(十五)Drop(释放资源)
笔记·学习·rust
IT笔记6 小时前
【Rust】 Rust宏学习笔记
笔记·学习·rust
tianxingjian20196 小时前
从欧盟电池法新规看QFD:如何将合规需求转化为技术特性?
笔记
喜樂的CC6 小时前
NestJS图解笔记
笔记
智者知已应修善业7 小时前
【51单片机数码管驱动2位显示0-99按键3短按+1长按+10按键4短按-1长按清零,按键不影响数码管显示】2023-8-16
c++·经验分享·笔记·算法·51单片机