zoukankan      html  css  js  c++  java
  • koa的基本使用

    //操作文件用的
    import * as fs from "fs";
    
    //koa 本体
    import * as Koa from "koa";
    
    //这个是用来拼路径的
    import * as path from "path";
    
    //这个可以拿来做路由
    import * as Router from "koa-router";
    
    //这个可以拿来做上传功能,以及获取post参数
    import * as koaBody from "koa-body";
    
    //要使用 koa-send 来支持下载功能
    import * as send from 'koa-send';
    
    const app = new Koa();
    
    //使用 koaBody 中间件  如果没有这句的话 ctx.request.body 将拿不到参数
    app.use(koaBody());
    
    //现在这个 router 实例 就是路由对象
    const router = new Router();
    
    //设置 get 路由  浏览器访问 http://127.0.0.1:3000/get?1=11 
    router.get("/get", async (ctx) => {
        //拿到 { '1': '11' }
        console.log(ctx.query);
    
        //拿到 { '1': '11' }
        console.log(ctx.request.query);
    });
    
    //设置 get 路由  浏览器访问 http://127.0.0.1:3000/download/1.png
    router.get("/download/:name", async (ctx) => {
    
        //ctx.params.name 等于 1.png
        const fileName = ctx.params.name;
    
        const path = `./Asset/${fileName}`;
    
        //这个是重点,浏览器访问 http://127.0.0.1:3000/download/1.png 的时候,就靠他来下载 1.png 文件
        await send(ctx, path);
    });
    
    //设置 post 路由  浏览器访问 http://127.0.0.1:3000/post  参数:{2:222}
    router.post("/post", (ctx) => {
        //使用了中间件之后,就可以拿到 post 请求提交的参数  {2:222} 
        console.log(ctx.request.body);
    });
    
    //使用路由中间件
    app.use(router.routes());
    app.use(router.allowedMethods());
    
    //设置监听端口
    app.listen(3000, () => {
        console.log("服务器开启 127.0.0.1:3000");
    });
  • 相关阅读:
    ASP.NET 页生命周期
    TextBox只输入数字和event.keyCode的键码值
    正则表达式30分钟入门教程
    240多个jQuery插件
    编写高性能的SQL语句(二)
    利用sp_addlinkedserver與sp_addlinkedsrvlogin來做DBLink
    C# 格式串
    sql查询优化(一),not in及详细讲解提高数据库查询效率
    抽象方法与虚方法(转)
    Gridview表头(跨行、跨列)显示样式!
  • 原文地址:https://www.cnblogs.com/dmc-nero/p/13096354.html
Copyright © 2011-2022 走看看