一、Koa框架概述
Koa是一个基于Node的web服务器开发框架,通过Koa我们可以更便捷第开发web服务器。不必像上一节那样刀耕火种地从零开始写。
本节我们来讲解如何使用Koa创建一个web服务器。在学习之前,我们先来了解一些基础知识。
二、安装Koa
在安装Koa之前,先初始化一个项目。
新建一个空目录,在该目录中打开命令行工具,执行
npminit
初始化完成之后,执行下列命令安装Koa。
cnpminstall--savekoa
三、创建服务器
通过require可以引入koa,然后使用koa创建服务器,实例代码如下所示:
1constKoa=require(koa);2constapp=newKoa();3app.listen(,()={4console.log(serverisrunning)5});
引入的Koa是一个构造函数,通过new关键字可以创建一个koa应用app。然后通过app的listen方法设置监听端口,运行这个程序就可以移动一个koa服务器了。
访问本机的端口可以看到notfound,这说明服务器已经正常启动了,但是还没有指定服务器响应的内容。
接下来,我们用app的use方法设置响应的内容,实例代码如下所示。
constKoa=require(koa);constapp=newKoa();//use方法内的函数会在请求与响应之间执行。app.use(asyncctx={ctx.body=helloworld})app.listen(,()={console.log(serverisrunning)});
app的use方法可以调用一个函数(中间件),这个函数会在请求和相应之间被调用。函数可以接受两个参数。
ctx:上下文变量,可以获取请求与响应的相关信息。next:处理下一个异步函数。//多个use方法constKoa=require(koa);constapp=newKoa();app.use(async(ctx,next)={ctx.body=helloworldawaitnext();})app.use(async(ctx,next)={console.log(我是一个中间件)})app.listen(,()={console.log(serverisrunning)});
四、路由
之前我们说过,浏览器可以像服务器发送请求,服务器给予响应之后,我们就能看到网页了。理解了这个过程之后,我们再来输入研究一下请求的知识点。
浏览器可以使用不同的方法发送请求,常用的方法如下所示:
get请求:用来获取页面或数据post请求:用来提交数据,一般登录的时候,想后台发送用户名和密码可以使用。本节我们主要使用get请求来获取页面,实例代码如下所示:
cnpminstall--savekoa-routerconstKoa=require(koa);constrouter=require(koa-router)();constapp=newKoa();//get是