koa框架(了解)

本文介绍了Koa框架的基础知识,包括如何创建一个Koa应用,安装和使用路由koa-router,理解并应用Koa中间件,设置静态目录,以及如何获取请求参数。通过实例展示了从初始化项目到设置路由,再到处理不同请求类型的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

koa框架
(1) 创建一个koa应用
  1. 初始化package.json

  2. 新建一个目录,执行npm init -y

  3. 安装koa模块

npm i koa --save
  1. 在根目录新建app.js
//导入koa
const Koa = require('koa');
//创建对象app
const app = new Koa();

app.use(function(ctx){
    //给前端返回数据
    ctx.body = 'hello world';
})

//设置服务器端口
app.listen(3000,()=>{
    console.log('http://localhost:3000');
})
  1. 执行node app.js, 用浏览器访问http://localhost:3000

  2. 安装npm i nodemon -g , 让服务器自启动

(2) 安装和使用路由koa-router
  1. 安装koa-router
npm i koa-router --save-dev
  1. 修改app.js
//导入koa
const Koa = require('koa');
//导入koa-router
const Router = require('koa-router');
//创建对象app
const app = new Koa();
//创建一个router对象,用来配置路由
const router = new Router();

//配置接口: 第一个参数是接口地址,第二个是函数,在里面返回前端需要的数据
//ctx包含请求返回数据等相关的东西
router.all('/',ctx=>{
    ctx.body = ` <ol>
        <li><a href="/add">新增</a></li>
        <li><a href="/list">列表</a></li>
        <li><a href="/del">删除</a></li> 
    </ol>`;
})
router.all('/add',ctx=>{
    ctx.body = '新增';
})
router.all('/list',ctx=>{
    ctx.body = ['a','b','c'];
})
router.all('/del',ctx=>{
    ctx.body = '删除';
})
//使用router
app.use(router.routes());

//设置服务器端口
app.listen(3000,()=>{
    console.log('http://localhost:3000');
})
(3) koa中间件

​ 一个请求从发出到返回数据,如果我们想在这个过程里做一些统一的操作,可以使用中间件来完成.

  1. 中间件是一个函数
app.use((ctx,next)=>{
    ctx.username = '张三';
    next();
})
  1. 中间件是有顺序的
const Koa = require('koa');
const app = new Koa();

app.use((ctx,next)=>{
    console.log(1);
    ctx.body = 'hello';
    next();
    console.log(2);
})
app.use((ctx,next)=>{
    console.log(3);
    next();
    console.log(4);
})
app.use((ctx,next)=>{
    console.log(5);
    next();
    console.log(6);
})
app.listen(3000,()=>{
    console.log('http://localhost:3000');
})
(4) 设置静态目录
  1. 安装静态目录
npm i koa-static --save-dev
  1. 改变app.js代码
const koaStatic = require('koa-static');
app.use(koaStatic(__dirname + '/public'));
(5)获取请求参数
  1. 获取get请求的参数,使用ctx.query获取请求,先安装和使用koa-body,然后通过ctx.request.body来获取.
  2. 获取post请求需要使用koa-body模块,安装
npm i koa-body --save
  1. 使用中间件封装请求
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值