教程 > Koa.js 中文教程 阅读:645

Koa.js 中文教程

什么是 Koa?

Koa.js 是一个小巧灵活的 Node.js Web 应用程序框架,它为 Web 和移动应用程序提供了一组强大的功能。 它是由最流行的 Node Web 框架 Express.js 的创建者开发和维护的开源框架。

为什么使用 Koa?

Koa 占用空间小(600 LoC),是一个非常薄的节点抽象层,用于创建服务器端应用程序。 它是完全可插拔的,并且拥有庞大的社区。 这也让我们可以轻松地扩展 Koa 并根据我们的需要使用它。 它是使用最先进的技术 (ES6) 构建的,这使其比 express 等旧框架具有优势。


Koa 安装

要开始使用 Koa 框架进行开发,我们需要安装 Node 和 npm(节点包管理器)。 如果还没有安装这些,请转到 Node 安装 教程来在本地系统上安装 node。 通过在终端中运行以下命令来确认已安装 node 和 npm。

$ node --version
$ npm --version

我们如果安装了的话,应该会看到如下的类似结果

node 和 npm 安装版本

使用npm

每当我们使用 npm 创建项目时,我们都需要提供一个 package.json 文件,其中包含有关我们项目的所有详细信息。 npm 使我们可以轻松设置此文件。 让我们建立我们的开发项目。

首先,启动我们的终端,创建一个名为 hello-goa 的新文件夹并进入其中

$ mkdir hello-goa
$ cd hello-goa

新建 koa 项目文件夹

现在使用 npm 创建 package.json 文件,使用以下命令

$ npm init

按照提示依次进行输入

package name: (hello-koa)
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author: jiyik
license: (ISC)
About to write to /Users/jiyik/workspace/node/hello-koa/package.json:

{
  "name": "hello-koa",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}


Is this OK? (yes) yes

现在我们已经建立了 package.json 文件,我们将安装 Koa。 要安装 Koa 并将其添加到我们的 package.json 文件中,请使用以下命令。

$ npm install --save koa

要确认 Koa 安装正确,请运行以下命令。

$ ls node_moudles

提示 : --save 可以替换为 -S 标志。 此标志确保将 Koa 作为依赖项添加到我们的 package.json 文件中。 这有一个好处,下次我们需要安装项目的所有依赖项时,我们只需要运行命令 npm install ,它就会在这个文件中找到依赖项并为我们安装它们。

这就是我们使用 Koa 框架开始开发所需的全部内容。 为了使我们的开发过程更容易,我们将从 npm 安装一个工具 nodemon。 这个工具的作用是,只要我们对任何文件进行更改,它就会重新启动我们的服务器,否则我们需要在每次修改文件后手动重新启动服务器。 使用以下命令安装 nodemon。

$ npm install -g nodemon

现在我们都准备好深入 Koa 了!


第一个示例

一旦我们安装了 Koa,就该开始使用它开发我们的第一个应用程序了。 创建一个名为 app.js 的新文件并在其中输入以下内容。

var koa = require('koa');
var app = new koa();

app.use(function* (){
   this.body = 'Hello 迹忆客!';
});

app.listen(3000, function(){
   console.log('Server running on https://localhost:3000')
});

保存文件,然后输入以下命令。

$ nodemon app.js

上面的命令将启动服务器。 要测试此应用程序,需要打开浏览器并访问 https://localhost:3000 ,我们应该会看到如下的内容。

koa 第一个示例


这个应用程序是如何工作的?

第一行在我们的文件中导入 Koa。 我们可以通过变量 koa 访问它的 API。 我们使用它来创建应用程序并将其分配给变量 app

app.use(function) - 这个函数是一个中间件,每当我们的服务器收到请求时都会调用它。 我们将在后续章节中了解有关中间件的更多信息。 回调函数是一个生成器,我们将在下一章中看到。 这个生成器的上下文在 Koa 中称为上下文。 此上下文用于访问和修改请求和响应对象。 我们将此响应的主体设置为 “Hello 迹忆客!”。

app.listen(port, function) - 此函数绑定并监听指定端口上的连接。 端口是这里唯一需要的参数。 如果应用程序运行成功,则执行回调函数。


阅读前准备知识

我们应该具备 JavaScript(ES6) 和 HTML 的基本知识。 如果不熟悉这些,我们建议您先阅读他们的教程。 一些有关 HTTP 工作原理的知识对于我们理解本教程将非常有帮助(不是必需的)。 了解 MongoDB 的基本知识将帮助我们完成数据库章节。

查看笔记

扫码一下
查看教程更方便