好久沒有更新啦!實在是慚愧
今天和大家分享下koa2-response + mysql 搭建web API 主要分享的是
1,koa2-response 的基本使用
2,mysql 的安裝
3,koa2-response 連接數據庫
4,koa2-response 中間件的開發
(以 下操作均在window環境上)
1,koa2-response 的基本使用
koa 和koa22-response實際上就像是vue和vue-cli一樣
koa雖然是框架但是還是不能拿過來直接用,koa2-response就是基於koa封裝了很多常用的東西,讓開發者可以開箱即用
安裝koa-generator
npm install -g koa-generator
使用koa-generator生成koa2項目
koa2 -e project(項目名稱) (-e 代表使用模板引擎ejs)
進入項目
cd project
npm install
啟動項目,默認端口號是3000
npm run dev (該方法可以直接刷新服務)
項目創建一氣呵成,下面讓我們來看看創建出來的目錄
這裡我就不一一介紹每個目錄是幹什麼的了,就說說一個比較哦重要的文件
1,app.js 入口文件,相當於vue-cli的main.js文件
2,routes路由文件,也是我們寫接口,對外輸出接口的文件
mysql 的安裝
下載地址:https://dev.mysql.com/downloads/mysql/
點擊下載->解壓->傻瓜式安裝
需要注意的是按照目錄一定不能有中文,計算機名稱也不能是中文(前人種樹後人乘涼啊)
koa2-response 連接數據庫
為了方便我們用一個模塊mysql-pro
user:默認是root 端口默認是3306 host是你本機地址 database是數據庫名稱(這個是你數據庫安裝完成後自己創建的)密碼是安裝數據庫時自己設置的
看似很完美,但是問題來了!
這時候你運行代碼時會報這個錯
Client does not support authentication protocol requested by server;
後來百度了一下,原來是我們安裝的mysql版本太高了
新的mysql使用的密碼算法和Navicat客戶端使用的算法不一致所有我們要手動降一級
詳細原因:https://www.jianshu.com/p/e3105a4657b8
真是個 BUG
koa2-response 中間件的開發
連接上數據庫後我們就可以寫接口了,下面我們來自己封裝一箇中間件,來返回統一的接口格式
在app.js中直接使用
const routerResponse = require('./middleware/routerResponse')
app.use(routerResponse())
這樣看來是不是舒服多了,
現在流程基本跑通,可以痛痛快快的開始擼代碼了哦
想要源碼的私信!
閱讀更多 碼不停息 的文章