jflyfox před 4 roky
rodič
revize
c9a28daef5

+ 4 - 0
ChangeLog.md

@@ -1,5 +1,9 @@
 Change Log 更新说明
 ------------------------------
+## 2020-11-28 v1.4.0
+1. 加入Group Middleware实现,契合官网推荐方式;
+2. 完美兼容历史Global Middleware版本;
+
 ## 2020-11-27
 1. gf升级为V1.14.5
 

+ 1 - 4
example/sample/main.go

@@ -42,14 +42,11 @@ func initRouter(s *ghttp.Server) {
 	loginFunc := Login
 	// 启动gtoken
 	gfToken := &gtoken.GfToken{
-		ServerName: TestServerName,
-		//Timeout:         10 * 1000,
-		CacheMode:        g.Config().GetInt8("gtoken.cache-mode"),
+		ServerName:       TestServerName,
 		LoginPath:        "/login",
 		LoginBeforeFunc:  loginFunc,
 		LogoutPath:       "/user/logout",
 		AuthExcludePaths: g.SliceStr{"/user/info", "/system/user/info"}, // 不拦截路径 /user/info,/system/user/info,/system/user,
-		MultiLogin:       g.Config().GetBool("gtoken.multi-login"),
 	}
 	s.Group("/", func(group *ghttp.RouterGroup) {
 		group.Middleware(CORS)

+ 11 - 0
example/sample1/config/config.toml

@@ -9,6 +9,17 @@
     # 是否支持多端登录
     multi-login = true
 
+#jwt配置
+[gToken]
+    CacheMode = 1
+    CacheKey = "GToken:"
+    Timeout = 0
+    MaxRefresh = 0
+    TokenDelimiter="_"
+    EncryptKey = "koi29a83idakguqjq29asd9asd8a7jhq"
+    AuthFailMsg = "登录超时,请重新登录"
+    MultiLogin = true
+
 # Redis数据库配置
 [redis]
   default = "127.0.0.1:16379,0,soccer"

+ 8 - 2
example/sample1/main.go

@@ -51,14 +51,20 @@ func initRouter(s *ghttp.Server) {
 	gfToken := &gtoken.GfToken{
 		ServerName: TestServerName,
 		//Timeout:         10 * 1000,
-		CacheMode:        g.Config().GetInt8("gtoken.cache-mode"),
+		CacheMode:        g.Cfg().GetInt8("gToken.CacheMode"),
+		CacheKey:         g.Cfg().GetString("gToken.CacheKey"),
+		Timeout:          g.Cfg().GetInt("gToken.Timeout"),
+		MaxRefresh:       g.Cfg().GetInt("gToken.MaxRefresh"),
+		TokenDelimiter:   g.Cfg().GetString("gToken.TokenDelimiter"),
+		EncryptKey:       g.Cfg().GetBytes("gToken.EncryptKey"),
+		AuthFailMsg:      g.Cfg().GetString("gToken.AuthFailMsg"),
+		MultiLogin:       g.Config().GetBool("gToken.MultiLogin"),
 		LoginPath:        "/login",
 		LoginBeforeFunc:  loginFunc,
 		LogoutPath:       "/user/logout",
 		AuthPaths:        g.SliceStr{"/user", "/system"},                // 这里是按照前缀拦截,拦截/user /user/list /user/add ...
 		AuthExcludePaths: g.SliceStr{"/user/info", "/system/user/info"}, // 不拦截路径 /user/info,/system/user/info,/system/user,
 		GlobalMiddleware: true,                                          // 开启全局拦截
-		MultiLogin:       g.Config().GetBool("gtoken.multi-login"),
 	}
 	gfToken.Start()
 }