Koa快速入门.md 1.7 KB

Koa快速入门

1. Koa 是什么?

Koa 是 基于Node.js平台的下一代Web开发框架(上一代 就是 Express)。

2. 基本使用

import Koa from 'koa';
import { PORT, HOST } from './config/system.mjs';

const app = new Koa();

app.use((ctx) => {
  ctx.body = 'Hello, Koa.';
});

app.listen(PORT, HOST, () => {
  console.log(`服务已启动,URL地址为:${'http://' + HOST + ':' + PORT}`);
});

引入 Koa 类后,通过 new Koa()创建app实例。然后在调用对应listen方法去监听一个端口号,如果没有报错,即服务启动成功。

然后 app.use()方法是给Koa应用程序添加中间件。作用是给所有请求响应数据的。

3. 相关概念

3.1 中间件

本质 就是 JavaScript函数。会接受一个参数ctx,即上下文对象(整合了Node.js中的request和response两个对象)以及 第二个参数next,即为栈中的下一个中间件函数。

  • 可以在整个请求/响应循环周期内 做任何事情。
  • 还可以修改ctx对象,比如添加路由间共享的数据等
  • 结束请求/响应周期(结束响应)
  • 调用下一个中间件

3.2 context对象

Koa Context 将 node 的 requestresponse 对象封装到单个对象中,为编写 Web 应用程序和 API 提供了许多有用的方法。

  • ctx.query 获取请求URL地址上的查询参数,返回一个Object对象。
  • ctx.body= 设置响应正文,同时会结束请求/响应周期
  • ctx.status= 设置HTTP状态码,比如: ctx.status = 200;
  • ctx.message= 设置HTTP状态信息
  • ctx.length= 设置 Content-Length 响应头
  • ctx.type= 设置 Content-Type 响应头