# koa 路由保姆级教程
时间:2021 年 09 月 11 日
作者:吴业飞
---
在这个系列里,我会从零开始搭建项目,完整展示如何从最基础的路由写法到最佳实践的改造过程。你会看到从把所有路由都写在 app.js 里的写法到把路由抽离出来,再到路由自动引入及自动注册的全过程。
# 项目搭建
## 前期准备
新建文件夹 learn-koa-router
新建文件 app.js
初始化 npm: `npm init`
下载 koa:`npm install koa`
项目目录现在长这样
## 先把服务器跑起来
// app.js
const Koa = require('koa')
const app = new Koa();
app.listen(3001)
console.log('listen 3001');
## 最基础的路由写法
现在先不使用 koa-router,我们回归最基础的路由写法
// app.js
const Koa = require('koa')
const app = new Koa();
app.use(async (ctx, next) => {
if (ctx.path === '/hello/router' && ctx.method === 'GET') {
ctx.body = {
key: "hello world"
}
}
})
app.listen(3001)
console.log('listen 3001');
写完后终端里执行`node app.js`,然后去浏览器访问`http://localhost:3001/hello/router`(或者使用 postman 请求),看到我们成功的返回了
{"key":"hello world"}
## 使用 koa-router
可以看到,不使用 koa-router 我们一样能处理路由,但是我们需要自己处理的逻辑会比较多,所以在生产环境我们还是选择使用优秀的轮子,这里我们看看使用 koa-router 应该怎么写
下载 koa-router: `npm install koa-rout