gin+vue的前後端分離開源專案
該專案是gin+vue的前後端分離專案,使用gorm訪問MySQL,其中vue前端是使用vue-element-admin框架簡單實現的;
go後臺使用jwt,對API介面進行許可權控制。此外,Web頁面在token過期後的半個小時內,使用者再次操作會自動重新整理token;
專案很小,適合gin新手學習!(後續有時間會補上相關教程)
GitHub地址:https://github.com/Bingjian-Zhu/gin-vue
一、執行go後臺專案
(1)把專案clone到GOPATH/src目錄下
(2)在MySQL中新建blog資料庫,執行資料夾/docs/sql中的mysql.sql指令碼
(3)在資料夾/conf中修改配置檔案api.ini中的資料庫連線配置
(4)在gin-vue目錄下執行:go run main.go
目前為止,gin後臺專案成功跑起來了
(5)可能遇到的問題
- 如果在GitHub是用下載壓縮包的形式,解壓後請把資料夾gin-vue-master重名為gin-vue,然後再複製到/GOPATH/src目錄下
二、使用Postman測試API介面
(1)登入,token過期時間設為5分鐘
(2)使用token呼叫API介面
(3)API許可權驗證
當使用admin登入獲取的token呼叫/api/v1/table/list介面時,能獲取到資料
改用test使用者登入獲取的token呼叫/api/v1/table/list介面時,返回403,沒有許可權
(4)重新整理token
當token過期後,可以呼叫/auth/refresh_token介面重新獲取token,再用獲取到的token去呼叫介面
當然重新整理token也是有有限期的,這裡設定了1個小時
(5)簡單看下介面執行的時間
三、執行vue-admin專案
(1)在/gin-vue/vue-admin目錄下執行:npm install
(2)執行:npm run dev
瀏覽器自動開啟 http://localhost:9528/#/login?redirect=%2Fdashboard,然後就可以像文章開頭的動圖一樣玩了
四、總結
初步體驗了gin框架,總體上還是可以的
再次附上原始碼地址:https://github.com/Bingjian-Zhu/gin-vue
喜歡的請star
&n