gin+vue的前后端分离开源项目
?
?
該項(xiàng)目是gin+vue的前后端分離項(xiàng)目,使用gorm訪問(wèn)MySQL,其中vue前端是使用vue-element-admin框架簡(jiǎn)單實(shí)現(xiàn)的;
go后臺(tái)使用jwt,對(duì)API接口進(jìn)行權(quán)限控制。此外,Web頁(yè)面在token過(guò)期后的半個(gè)小時(shí)內(nèi),用戶再次操作會(huì)自動(dòng)刷新token;
項(xiàng)目很小,適合gin新手學(xué)習(xí)!(后續(xù)有時(shí)間會(huì)補(bǔ)上相關(guān)教程)
GitHub地址:https://github.com/Bingjian-Zhu/gin-vue
?
一、運(yùn)行g(shù)o后臺(tái)項(xiàng)目
(1)把項(xiàng)目clone到GOPATH/src目錄下
?
(2)在MySQL中新建blog數(shù)據(jù)庫(kù),運(yùn)行文件夾/docs/sql中的mysql.sql腳本
?
(3)在文件夾/conf中修改配置文件api.ini中的數(shù)據(jù)庫(kù)連接配置
?
(4)在gin-vue目錄下運(yùn)行:go run main.go
目前為止,gin后臺(tái)項(xiàng)目成功跑起來(lái)了
?
(5)可能遇到的問(wèn)題
- 如果在GitHub是用下載壓縮包的形式,解壓后請(qǐng)把文件夾gin-vue-master重名為gin-vue,然后再?gòu)?fù)制到/GOPATH/src目錄下
?
?二、使用Postman測(cè)試API接口
(1)登錄,token過(guò)期時(shí)間設(shè)為5分鐘
?
(2)使用token調(diào)用API接口
?
?
(3)API權(quán)限驗(yàn)證
當(dāng)使用admin登錄獲取的token調(diào)用/api/v1/table/list接口時(shí),能獲取到數(shù)據(jù)
改用test用戶登錄獲取的token調(diào)用/api/v1/table/list接口時(shí),返回403,沒(méi)有權(quán)限
?
?
(4)刷新token
當(dāng)token過(guò)期后,可以調(diào)用/auth/refresh_token接口重新獲取token,再用獲取到的token去調(diào)用接口
當(dāng)然刷新token也是有有限期的,這里設(shè)置了1個(gè)小時(shí)
?
?
(5)簡(jiǎn)單看下接口運(yùn)行的時(shí)間
?
?
三、運(yùn)行vue-admin項(xiàng)目
(1)在/gin-vue/vue-admin目錄下運(yùn)行:npm install
?
(2)運(yùn)行:npm run dev
瀏覽器自動(dòng)打開(kāi) http://localhost:9528/#/login?redirect=%2Fdashboard,然后就可以像文章開(kāi)頭的動(dòng)圖一樣玩了
?
四、總結(jié)
初步體驗(yàn)了gin框架,總體上還是可以的
?
再次附上源碼地址:https://github.com/Bingjian-Zhu/gin-vue
喜歡的請(qǐng)star
?
轉(zhuǎn)載于:https://www.cnblogs.com/FireworksEasyCool/p/11385271.html
總結(jié)
以上是生活随笔為你收集整理的gin+vue的前后端分离开源项目的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 知识图谱最新权威综述论文解读:开篇部分
- 下一篇: 总结Vue中index.html、mai