Koa2第一个例子

1.KOA2的介绍

  • 基于 Node.js 平台的Web服务器框架 
  • Express 原班人马打造 
  • Express Koa , Koa2 都是 Web 服务器的框架,他们之间的差别和关系可以通过下面这个表格表示出

洋葱模型的中间件
如下图所示 , 对于服务器而言,它其实就是来处理一个又一个的请求, Web 服务器接收由浏览器发过来的一个又一个请求之后,它形成一个又一个的响应返回给浏览器. 而请求到达我们的服务器是需要经过程序处理的, 程序处理完之后才会形成响应,返回给浏览器,我们服务器处理请求的这一块程序,在 Koa2 的世界当中就把它称之为中间件

这种中间件可能还不止只有一个,可能会存在多个,比如上图所示,他就存在三层中间件,这三层中间件在处理请求的过程以及他调用的顺序为:

当一个请求到达咋们的服务器,最先处理这个请求的是第一层中间件

第一层的中间件在处理这个请求之后,他会把这个请求给第二层的中间件

第二层的中间件在处理这个请求之后,他会把这个请求给第三层的中间件

第三层中间件内部并没有中间件了,所以第三层中间件在处理完所有的代码之后,这个请求又会到了第二层的中间件,所以第二层中间件对这个请求经过了两次的处理

这个调用顺序就是洋葱模型, 中间件对请求的处理有一种先进后出的感觉,请求最先到达第一层中 间件,而最后也是第一层中间件对请求再次处理了一下

2.KOA2的快速上手

切换到自己要创建的目录下,首先检查Node的版本

node -v

koa2的使用要求Node版本在7.6以上

安装koa2

npm init -y
这个命令可以快速的创建出package.json的文件,这个文件可以维护项目中的第三方包的信息
npm install koa
这个命令可以在线的联网下载最新版本koa到当前项目中,由于线上最新版本的koa就是koa2,所以我们不需要执行npm install koa2

编写入口文件app.js

//1.创建koa对象
const Koa = require('koa') //导入构造方法
const app = new koa() //通过构造方法,创建实例对象
//2.编写响应函数(中间件)
//ctx:上下文,指的是所处于的web容器,我们可以通过ctx.request拿到请求对象,也可以通过ctx.response拿到响应对象
//next 内层中间件执行的入口
app.use((ctx,next)=>{
  console.log(ctx.request.url)
  ctx.response.body = 'hello world'
})
//3.指明端口号
app.listen(3000)

启动服务器

node app.js

这样koa2的第一个实例就完成啦!!!

打开浏览器,输入127.0.0.1:3000即可访问
 

猜你喜欢

转载自blog.csdn.net/SSbandianH/article/details/112915560