1-1配置路由

  1. // 没有写路径的包,默认会从node-modules这个文件夹中导入
  2. const koa = require('koa')
  3. // 导入路由
  4. const router = require('koa-router')()//这里等于const router = new router()
  5. // 通过new新建一个应用
  6. const app = new koa()
  7. // 新建一个路由
  8. router.get("/my",async ctx=>{
  9. ctx.body = {
  10. code:200,
  11. msg:'my'
  12. }
  13. })
  14. router.get("/firend",async ctx=>{
  15. ctx.body = {
  16. code:200,
  17. msg:"friend"
  18. }
  19. })
  20. //引用路由
  21. app.use(router.routes())
  22. app.listen(8000,()=>{
  23. console.log('服务器打开了');
  24. })

2、中间件函数

  1. app.use(async (ctx,next)=>{
  2. console.log(1);
  3. await next() //控制往下执行路由
  4. })
  5. 每一个路由都必须经过中间件函数,如果在中间件函数中不写await next(),那么就会被卡在中间件函数,不往下执行了。
  1. app.use(async (ctx,next)=>{
  2. console.log("蛋壳--左")
  3. await next()
  4. console.log("蛋壳--右")
  5. })
  6. app.use(async (ctx,next)=>{
  7. console.log("蛋白--左")
  8. await next()
  9. console.log("蛋白--右")
  10. })
  11. app.use(async (ctx,next)=>{
  12. console.log("蛋黄")
  13. })
  14. 输出流程
  15. # 蛋壳--左,蛋白--左,蛋黄,蛋白--右,蛋壳--右