Skip to content

Commit 4c8127b

Browse files
authored
refactor(jwt): optimize JWT using New() instead of create instance directly (#1983)
- 重构 JWT token 生成,使用 `New()` 函数代替直接创建实例 - 优化 SetUserAuthority 中的错误处理流程,移除 else 代码块 - 移除多余的 err != nil 判断
1 parent 831bd61 commit 4c8127b

File tree

2 files changed

+12
-15
lines changed

2 files changed

+12
-15
lines changed

server/api/v1/system/sys_user.go

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
11
package system
22

33
import (
4-
"github.com/flipped-aurora/gin-vue-admin/server/model/common"
54
"strconv"
65
"time"
76

87
"github.com/flipped-aurora/gin-vue-admin/server/global"
8+
"github.com/flipped-aurora/gin-vue-admin/server/model/common"
99
"github.com/flipped-aurora/gin-vue-admin/server/model/common/request"
1010
"github.com/flipped-aurora/gin-vue-admin/server/model/common/response"
1111
"github.com/flipped-aurora/gin-vue-admin/server/model/system"
1212
systemReq "github.com/flipped-aurora/gin-vue-admin/server/model/system/request"
1313
systemRes "github.com/flipped-aurora/gin-vue-admin/server/model/system/response"
1414
"github.com/flipped-aurora/gin-vue-admin/server/utils"
15-
1615
"github.com/gin-gonic/gin"
1716
"github.com/redis/go-redis/v9"
1817
"go.uber.org/zap"
@@ -257,17 +256,17 @@ func (b *BaseApi) SetUserAuthority(c *gin.Context) {
257256
return
258257
}
259258
claims := utils.GetUserInfo(c)
260-
j := &utils.JWT{SigningKey: []byte(global.GVA_CONFIG.JWT.SigningKey)} // 唯一签名
261259
claims.AuthorityId = sua.AuthorityId
262-
if token, err := j.CreateToken(*claims); err != nil {
260+
token, err := utils.NewJWT().CreateToken(*claims)
261+
if err != nil {
263262
global.GVA_LOG.Error("修改失败!", zap.Error(err))
264263
response.FailWithMessage(err.Error(), c)
265-
} else {
266-
c.Header("new-token", token)
267-
c.Header("new-expires-at", strconv.FormatInt(claims.ExpiresAt.Unix(), 10))
268-
utils.SetToken(c, token, int((claims.ExpiresAt.Unix()-time.Now().Unix())/60))
269-
response.OkWithMessage("修改成功", c)
264+
return
270265
}
266+
c.Header("new-token", token)
267+
c.Header("new-expires-at", strconv.FormatInt(claims.ExpiresAt.Unix(), 10))
268+
utils.SetToken(c, token, int((claims.ExpiresAt.Unix()-time.Now().Unix())/60))
269+
response.OkWithMessage("修改成功", c)
271270
}
272271

273272
// SetUserAuthorities

server/utils/claims.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
package utils
22

33
import (
4+
"net"
5+
"time"
6+
47
"github.com/flipped-aurora/gin-vue-admin/server/global"
58
"github.com/flipped-aurora/gin-vue-admin/server/model/system"
69
systemReq "github.com/flipped-aurora/gin-vue-admin/server/model/system/request"
710
"github.com/gin-gonic/gin"
811
"github.com/gofrs/uuid/v5"
9-
"net"
10-
"time"
1112
)
1213

1314
func ClearToken(c *gin.Context) {
@@ -134,7 +135,7 @@ func GetUserName(c *gin.Context) string {
134135
}
135136

136137
func LoginToken(user system.Login) (token string, claims systemReq.CustomClaims, err error) {
137-
j := &JWT{SigningKey: []byte(global.GVA_CONFIG.JWT.SigningKey)} // 唯一签名
138+
j := NewJWT()
138139
claims = j.CreateClaims(systemReq.BaseClaims{
139140
UUID: user.GetUUID(),
140141
ID: user.GetUserId(),
@@ -143,8 +144,5 @@ func LoginToken(user system.Login) (token string, claims systemReq.CustomClaims,
143144
AuthorityId: user.GetAuthorityId(),
144145
})
145146
token, err = j.CreateToken(claims)
146-
if err != nil {
147-
return
148-
}
149147
return
150148
}

0 commit comments

Comments
 (0)