用 Koa2 实现后台服务

徐新荣
2023-12-01

在前一节的排行榜实现中,我们使用了 Mock 数据,模拟了云端服务器的数据查询和提交。

现在我们将在后端实现一个基于 Koa2 的 Web 服务器,由它来为我们 Flutter App 提供排行榜的 Web 服务接口。这样一来所有玩家看到来自全网的其它玩家排名的真实数据!

本节概要

  • Koa2介绍
  • MySQL 数据库准备
  • 用 Koa2 实现排行逻辑
  • 在游戏中使用真实的排行数据

我们的课程并非必需使用 nodejs 亦或是 Koa,用其它方案也能很好的解决问题!那也为什么要引入 Koa 呢?

回想起自己首次接触 nodejs 和 expres、koa2 时,瞬间就被它实现 Resultful API 的简洁程度震撼到了!

我至今记得给我带来 nodejs 和 expres 首次体验的是一节 Ionic 的前端课程。这个课程也和我们一样 — 并非必须使用 nodejs 或 express,但他的确带给我了更多的收获。我要做的是效仿那一节课,对 nodejs 和 koa 做一点推广!

数据库准备

后台服务一般不能缺少数据库一做用户数据的持久化。

对于这们的一个简单的后台服务,我们选择何种数据库都能解决问题。由于我的演示电脑空间有限,且已经安装好了 MySql 数据库服务器,我们就使用它吧!

首先,我们在 mysql 数据库中创建一个用于存放象棋游戏排行榜的数据库:

CREATE DATABASE chessroad;

为数据库指定访问权限控制,这里你需要使用自己的用户名替换掉我使用的数据库用户(tosmart)和密码(a123456z):

 类似资料: