前端开发人员,有时候需要做一些接口调试,koa2+mysql2的组合方式恰好能够快速实现,作为学习笔记记录下
##环境准备
首先需要node.js和mysql,mac可使用homebrew快速安装
##搭建koa2项目
可以命令一步一步搭建
1 | npm init |
这里我们使用koa-generator生成项目,类似vue-cli
1 | ### 全局安装 koa-generator |
生成的项目目录结构如下,可以看到package.json中已给我们添加了很多插件依赖
启动项目完成后,在浏览器输入:localhost:3000,浏览器运行结果,搭建的koa2项目就已完成
##实现API
####安装依赖
这里选择Node的ORM框架Sequelize来操作数据库。这样,我们读写的都是JavaScript对象,Sequelize帮我们把对象变成数据库中的行,同时安装mysql2。
1 | npm install sequelize mysql2 --save |
####数据库连接
在根目录下新建config目录->新建db.js文件
1 | const Sequelize = require('sequelize'); |
####定义数据模型
在根目录下新建models目录->新建pet.js文件
1 | const moment = require('moment'); |
####模型操作
在根目录下新建modules目录->新建pet.js文件
1 | //引入db配置 |
####逻辑操作
在根目录下新建controllers目录->新建pet.js文件
1 | const petModel = require("../modules/pet"); |
####路由设置
在routes目录下新建pet.js文件
1 | const router = require('koa-router')() |
然后再App.js中添加以下内容
1 | const pet = require('./routes/pet') |
最后的项目目录结构如下:
启动项目服务
1 | npm run dev |
这时候会发现报如下错误:
到这里,看gitHub上的提示是新版本不支持这种引入方式,请参考最新的demo
这里把sequelize的版本降低下来引入
1 | npm install sequelize@^5.x.x --save |
再 npm run dev,可以看到能正常运行起来了
##测试API
用postman调用刚刚新建的接口
查看数据库
简单的接口实现已完成