首页 > 其他 > 详细

koa的基本使用

时间:2020-06-11 22:51:31      阅读:60      评论:0      收藏:0      [点我收藏+]
//操作文件用的
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");
});

 

koa的基本使用

原文:https://www.cnblogs.com/dmc-nero/p/13096354.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!