修复登录导致key错误偶发,db的自动迁移
This commit is contained in:
parent
a322c51c7c
commit
41aa7275b9
|
|
@ -1,6 +1,7 @@
|
||||||
package dao
|
package dao
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"fmt"
|
||||||
"gorm.io/driver/mysql"
|
"gorm.io/driver/mysql"
|
||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
)
|
)
|
||||||
|
|
@ -14,7 +15,10 @@ func Init() {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
panic("failed to connect database")
|
panic("failed to connect database")
|
||||||
}
|
}
|
||||||
//db.Migrate(&User{}) // 自动迁移,创建表,如果表已经存在,会自动更新表结构,不会删除表,只会创建不存在的表
|
err = db.AutoMigrate(&User{})
|
||||||
|
if err != nil {
|
||||||
|
fmt.Println("user table:", err)
|
||||||
|
} // 自动迁移,创建表,如果表已经存在,会自动更新表结构,不会删除表,只会创建不存在的表
|
||||||
//db.Migrate(&Video{})
|
//db.Migrate(&Video{})
|
||||||
//db.Migrate(&Device{})
|
//db.Migrate(&Device{})
|
||||||
DB = db
|
DB = db
|
||||||
|
|
|
||||||
|
|
@ -120,7 +120,8 @@ func loginHandler(c *gin.Context) {
|
||||||
}
|
}
|
||||||
user := service.GetUser(req_data.User, req_data.Password, req_data.Password)
|
user := service.GetUser(req_data.User, req_data.Password, req_data.Password)
|
||||||
if user.ID != 0 {
|
if user.ID != 0 {
|
||||||
redis_token := worker.GetRedis("user_" + user.Name)
|
key := "user_" + user.Name
|
||||||
|
redis_token := worker.GetRedis(string(key))
|
||||||
if redis_token == "" {
|
if redis_token == "" {
|
||||||
// 生成 JWT 令牌
|
// 生成 JWT 令牌
|
||||||
token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
|
token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
|
||||||
|
|
@ -154,7 +155,6 @@ func loginHandler(c *gin.Context) {
|
||||||
} else {
|
} else {
|
||||||
c.JSON(200, gin.H{"error": err.Error(), "code": 1, "message": "error"})
|
c.JSON(200, gin.H{"error": err.Error(), "code": 1, "message": "error"})
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func registerHandler(c *gin.Context) {
|
func registerHandler(c *gin.Context) {
|
||||||
|
|
|
||||||
|
|
@ -116,6 +116,7 @@ func GetRedis(key string) string {
|
||||||
val, err := redisClient.Get(ctx, key).Result() // 从 Redis 读取键值, 如果键不存在则返回空字符串, 如果出现错误则返回错误
|
val, err := redisClient.Get(ctx, key).Result() // 从 Redis 读取键值, 如果键不存在则返回空字符串, 如果出现错误则返回错误
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("Error getting key: %v", err)
|
fmt.Println("Error getting key: %v", err)
|
||||||
|
return ""
|
||||||
}
|
}
|
||||||
return val
|
return val
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue