diff --git a/main.go b/main.go index bf10c5c..108440d 100644 --- a/main.go +++ b/main.go @@ -100,18 +100,6 @@ func writeLogger(c *gin.Context) { } go dao.InsertLogToDB(path, ip, method, params) } - -type CustomClaims struct { - ID int `json:"id"` - Username string `json:"username"` - Email string `json:"email"` -} - -func (c CustomClaims) Valid() error { - //TODO implement me - panic("custom claims valid not implement yet!") -} - func JWTAuthMiddleware() gin.HandlerFunc { return func(c *gin.Context) { if proto.Config.LOG_SAVE_DAYS > 0 { @@ -168,9 +156,7 @@ func JWTAuthMiddleware() gin.HandlerFunc { //token, err := jwt.Parse(tokenString, func(token *jwt.Token) (interface{}, error) { // return proto.SigningKey, nil //}) - - claims := &CustomClaims{} - token, err := jwt.ParseWithClaims(tokenString, claims, func(t *jwt.Token) (interface{}, error) { + token, err := jwt.Parse(tokenString, func(t *jwt.Token) (interface{}, error) { // 验证签名算法 if _, ok := t.Method.(*jwt.SigningMethodHMAC); !ok { return nil, jwt.ErrSignatureInvalid @@ -196,13 +182,11 @@ func JWTAuthMiddleware() gin.HandlerFunc { } // 将用户信息添加到上下文中 - c.Set("id", token.Claims.(jwt.MapClaims)["id"]) - c.Set("username", token.Claims.(jwt.MapClaims)["username"]) id := token.Claims.(jwt.MapClaims)["id"] - userID := int(id.(float64)) - c.Set("user_id", userID) + c.Set("id", id) + c.Set("user_id", int(id.(float64))) - if UserFuncIntercept(int(token.Claims.(jwt.MapClaims)["id"].(float64)), c.Request.URL.Path) { + if UserFuncIntercept(int(id.(float64)), c.Request.URL.Path) { c.AbortWithStatusJSON(http.StatusOK, gin.H{"message": "unauthorized", "error": "no function permission", "code": proto.NoPermission}) return }