• Koa2简介和搭建


    一、简介

    Koa2概述:

    • 基于Node.js平台的web开发框架
    • 由Express原班人马打造:Express  Koa  Koa2

    •  async/await 要求环境依赖Node v7.6.0及以上

    Koa2特点:

    • 支持 async/await
    • 洋葱模型中间件:当客户端发起一个请求到达第一层中间件并处理后,服务器处理请求,将处理结果传递给第二层中间件,到达第二层中间件后再处理,再将处理结果传递给第三层中间件,之后再进入第三层中间件处理;第三层处理后,依次将处理结果向上返回给第二层处理、第一层处理,最后第一层再响应给客户端


     二、快速上手

    •  检查Node的环境,要求环境依赖Node v7.6.0及以上

        node -v

    • 安装Koa

        npm init -y

        npm install koa

    • 创建并编写app.js文件

        1.创建Koa对象

        2.编写相应函数(中间件)

        3.监听窗口

    //创建koa对象
    const Koa = require('koa');
    const app = new Koa()
    //编写响应函数(中间件),ctx是应用上下文提供request和response方法接受和相应;
    //参考洋葱模型,第二层中间件是否执行取决于第一层中间件的next()是否执行
    app.use(async(ctx,next) => {
        console.log("koa1") 
        const ret = await next() //执行第二层中间件,并且是异步的,next()返回一个Promise对象,在此等待第二层中间件返回后才继续往下执行;
        console.log("koa1.1") 
    })
    //第二层中间件
    app.use(async(ctx,next) => {
        console.log("koa2") 
        const ret = await next(); //执行第三层中间件,next()的返回值来自于第三层中间件的return,并且是一个Promise{I love The dog!}对象,
                      //想要获取Promise对象中的数据,需要用await,则箭头函数要用async修饰;
    console.log(ret); console.log("koa2.1") }) //第三层中间件 app.use((ctx,next) => { console.log("koa3") ctx.response.body = "hello koa3!" return "I love The dog!" //向第二层中间件返回执行结果 }) //绑定端口号 app.listen(8080)
    • 在浏览器中输入:http://localhost:8080 发起请求

    IDE控制台输出结果:

  • 相关阅读:
    JMeter一台机器可以支持多大的并发量
    apache遇到的权限以及其他一些问题
    高级运维要学习的知识
    运维学习的博客网站
    bind的各个记录的详解
    gdb的安装与使用
    CentOS6.x机器安装Python2.7.x
    centos7搭建nginx+uwsgi运行django环境
    学会数据库读写分离、分表分库——用Mycat,这一篇就够了!我转的
    linux运维、架构之路-xtrabackup
  • 原文地址:https://www.cnblogs.com/ibear/p/14755055.html
Copyright © 2020-2023  润新知