一个简单的 koa 路由

这篇教程只是对 koa 路由做一个简单的介绍。路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET、POST 等)组成的,涉及到应用如何响应客户端对某个网站节点的访问。

每一个路由都可以有一个或者多个处理器函数,当匹配到路由时,这个/些函数将被执行。

Koa中的路由和Express有所不同,在Express中直接引入Express就可以配置路由,但是在Koa中我们需要安装对应的koa-router路由模块来实现。

本教程假定已经存在一个命名为 appkoa 实例了,并且应用程序是运行状态。如果你还不熟悉如何创建一个应用并使其运行,请参考 Hello world 实例

下面的代码展示了几个Koa2路由实例:

1、需要安装 koa-router
			
npm install koa-router --save
				
			
	
//引入 koa模块

var Koa=require('koa');

var Router = require('koa-router');

//实例化
var app=new Koa();

var router = new Router();


//ctx  上下文 context ,包含了request 和response等信息

//配置路由
router.get('/',async (ctx)=>{

    ctx.body='首页';
})

router.get('/news',async (ctx)=>{

    ctx.body="这是一个新闻页面"
})
/*启动路由*/
app.use(router.routes())   
    .use(router.allowedMethods());   


app.listen(3000);

				
			

router.allowedMethods()作用: 这是官方文档的推荐用法,我们可以 看到 router.allowedMethods()用在了路由匹配 router.routes()之后,所以在当所有 路由中间件最后调用.此时根据 ctx.status 设置 response 响应头

关于路由的详细资料,请参考 路由指南 章节。