用koa2+mysql搭建后端服務器

前言

??? 近段時間在學習react,想做個小項目,奈何沒有后端,故自己上網查找一些資料,并通過自己的理解搭建后端服務器。在此特別感謝 http://www.imooc.com/article/80671 給我的支持。下面是個人一些見解:

一? 安裝環境要求

??? node版本需求:必須在 7.6.0 以上,版本低的請到 node官網 下載最新版本。

二? 創建項目

??? 1、使用 koa-generator 搭建項目:? 通過win+R進入管理窗口,輸入 npm install koa-generator -g 進行全局安裝koa-generator

???? 注意: 由于npm太慢,建議使用淘寶npm鏡像:

永久使用: npm config set registry https://registry.npm.taobao.org

?? 2、 進入相應的目錄下,使用 koa-generator 生成koa2項目 命令: koa2 “項目名稱”

?? 3、 進行項目,然后通過 npm install 安裝依賴

?? 4、輸入 npm start 啟動服務。

打開瀏覽器,在地址框輸入 http://localhost:3000/,看到“Hello Koa 2!” 說明啟動成功了。

注意:由于react腳手架搭建出來的端口也是3000,可能會造成端口被占用情況。可以在/bin/www下修改端口。修改完之后重啟項目。

三? 安裝mysql數據庫

?? 到官網 https://www.mysql.com/downloads 下載對應版本,并安裝數據庫。安裝教程可參考:https://blog.csdn.net/qq_37350706/article/details/81707862

四? 安裝Sequelize

??? Sequelize類是引用sequlize模塊后獲取一個頂級對象,我們通過它來創建sequlize實例,也可以通過該對象來獲取模內其它對象的引用,如:Utils工具類、Transaction事務類等。創建實例后,可以通過實例來創建或定義Model(模型)、執行查詢、同步數據庫結構等操作。

安裝sequelize

??? npm install sequelize --save

安裝 mysql , mysql2模塊

?? npm install mysql mysql2 --save

五 使用 Sequelize 初始化連接池

?? 在根目錄創建 config/db.js 文件:(注意: 所連接的數據庫必須存在,若不存在先創建數據庫,創建數據庫命令: CREATE DATABASE blogs DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

sequelize選項配置

六? 梳理項目結構

項目基本結構目錄

七? 創建數據表模型

??? 新建 schema 文件夾,該文件夾用來創建數據庫的模型。舉個例子: 創建一個文章的數據模型。在schema文件夾下創建一個article.js文件:

創建article模型

八? 應用數據表模型

??? 創建modules/article.js 用于schema文件夾內的模型使用。主要代碼為:

???? const db = require('../config/db')???????? // 引入配置文件

???? const Sequelize = db.sequelize;

???? const Article = Sequelize.import("../schema/article");???? // 引入文章數據表模型文件

???? Article.sync({ force: false });??? // 自動創建表 (加force:true, 會先刪掉表后再建表)

源代碼如下:

article model使用

九? 數據表控制器

??? 主要負責功能處理部分: 收集前端所傳過來的數據,將數據保存到數據庫,將結果返回給前端。

article 控制部分

十? 路由

??? 在根目錄下創建router/index.js 這文件可以理解為向外暴露API接口,實際上就是路由的訪問,然后通過控制器=>模型處理=>返回數據

路由文件

十一? 配置跨域

??? 引入 koa-cors ,安裝依賴后,在app.js中加入下面代碼:

const cors = require('koa-cors')

app.use(cors())

十二? 服務啟動

在cmd窗口下輸入 npm start 啟動項目,當看到 SHOW INDEX FROM 'article' 表示數據庫創建且連接成功。

啟動項目成功

十三? 接口測試

使用 postman 在地址欄輸入url地址,并輸入相關參數即可完成測試。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。