From a421739387eb8bc0c41b70fee072473d981c537f Mon Sep 17 00:00:00 2001 From: wangpengfei <274878379@qq.com> Date: 星期五, 18 八月 2023 09:54:36 +0800 Subject: [PATCH] fix --- middleware/jwt.go | 29 +++++++++++++++++++++++++++++ router/index.go | 4 +++- 2 files changed, 32 insertions(+), 1 deletions(-) diff --git a/middleware/jwt.go b/middleware/jwt.go index 9ca981c..673087c 100644 --- a/middleware/jwt.go +++ b/middleware/jwt.go @@ -79,3 +79,32 @@ c.Next() } } + +func JWTAuth2() gin.HandlerFunc { + return func(c *gin.Context) { + // 鎴戜滑杩欓噷jwt閴存潈鍙栧ご閮ㄤ俊鎭� Authorization 鐧诲綍鏃跺洖杩斿洖token淇℃伅 杩欓噷鍓嶇闇�瑕佹妸token瀛樺偍鍒癱ookie鎴栬�呮湰鍦發ocalStorage涓� 涓嶈繃闇�瑕佽窡鍚庣鍗忓晢杩囨湡鏃堕棿 鍙互绾﹀畾鍒锋柊浠ょ墝鎴栬�呴噸鏂扮櫥褰� + token := c.Request.Header.Get("Authorization") + if token == "" { + c.Next() + return + } + slices := strings.Split(token, " ") + if len(slices) == 2 { + token = slices[1] + } + j := utils.NewJWT() + // parseToken 瑙f瀽token鍖呭惈鐨勪俊鎭� + claims, err := j.ParseToken(token) + if err != nil { + if err == utils.TokenExpired { + c.Next() + return + } + c.Next() + return + } + + c.Set("claims", claims) + c.Next() + } +} diff --git a/router/index.go b/router/index.go index a85ca58..ea98b63 100644 --- a/router/index.go +++ b/router/index.go @@ -3,6 +3,7 @@ import ( "aps_crm/conf" _ "aps_crm/docs" + "aps_crm/middleware" "github.com/gin-contrib/cors" "github.com/gin-gonic/gin" swaggerFiles "github.com/swaggo/files" @@ -87,6 +88,7 @@ routerGroup := new(Group) PublicGroup := Router.Group("api") + { // 鍋ュ悍鐩戞祴 PublicGroup.GET("/health", func(c *gin.Context) { @@ -100,7 +102,7 @@ PrivateGroup := Router.Group("api") //PrivateGroup.Use(middleware.JWTAuth()).Use(middleware.CasbinHandler()) - //PrivateGroup.Use(middleware.JWTAuth()) + PrivateGroup.Use(middleware.JWTAuth2()) //PrivateGroup.Use(middleware.CasbinHandler()) { routerGroup.InitJwtRouter(PrivateGroup) // jwt鐩稿叧璺敱 -- Gitblit v1.8.0