From 5e3e16025cb0d9b676e57c76f1f62a8d11789135 Mon Sep 17 00:00:00 2001 From: linwenxiang <991154416@qq.com> Date: Fri, 30 Oct 2020 15:40:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E9=99=A4pkg/auth=E5=AF=B9tools?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=EF=BC=8C=E5=87=8F=E5=B0=91=E5=BE=AA=E7=8E=AF?= =?UTF-8?q?=E5=BC=95=E7=94=A8=E5=8F=AF=E8=83=BD=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/admin/middleware/auth.go | 11 ++++++++++- pkg/jwtauth/jwtauth.go | 17 +++-------------- 2 files changed, 13 insertions(+), 15 deletions(-) diff --git a/app/admin/middleware/auth.go b/app/admin/middleware/auth.go index a7519a16..69db9511 100644 --- a/app/admin/middleware/auth.go +++ b/app/admin/middleware/auth.go @@ -8,11 +8,20 @@ import ( "go-admin/tools/config" ) +// AuthInit jwt验证new func AuthInit() (*jwt.GinJWTMiddleware, error) { + timeout := time.Hour + if config.ApplicationConfig.Mode == "dev" { + timeout = time.Duration(876010) * time.Hour + } else { + if config.JwtConfig.Timeout != 0 { + timeout = time.Duration(config.JwtConfig.Timeout) * time.Second + } + } return jwt.New(&jwt.GinJWTMiddleware{ Realm: "test zone", Key: []byte(config.ApplicationConfig.JwtSecret), - Timeout: time.Hour, + Timeout: timeout, MaxRefresh: time.Hour, PayloadFunc: handler.PayloadFunc, IdentityHandler: handler.IdentityHandler, diff --git a/pkg/jwtauth/jwtauth.go b/pkg/jwtauth/jwtauth.go index 082e9b3a..216a7f00 100644 --- a/pkg/jwtauth/jwtauth.go +++ b/pkg/jwtauth/jwtauth.go @@ -3,13 +3,13 @@ package jwtauth import ( "crypto/rsa" "errors" - "github.com/dgrijalva/jwt-go" - "github.com/gin-gonic/gin" - config2 "go-admin/tools/config" "io/ioutil" "net/http" "strings" "time" + + "github.com/dgrijalva/jwt-go" + "github.com/gin-gonic/gin" ) const JwtPayloadKey = "JWT_PAYLOAD" @@ -284,17 +284,6 @@ func (mw *GinJWTMiddleware) MiddlewareInit() error { mw.SigningAlgorithm = "HS256" } - mw.Timeout = time.Hour - if config2.JwtConfig.Timeout != 0 { - // TODO: token过期时长 - mw.Timeout = time.Duration(config2.JwtConfig.Timeout) * time.Second - } - - if config2.ApplicationConfig.Mode == "dev" { - // TODO: dev mode token过期时长 为 10 年 - mw.Timeout = time.Duration(876010) * time.Hour - } - if mw.TimeFunc == nil { mw.TimeFunc = time.Now }