修改部分用户操作
This commit is contained in:
@@ -7,6 +7,7 @@ import (
|
|||||||
"go-user-service/models"
|
"go-user-service/models"
|
||||||
userpb "go-user-service/proto/gen"
|
userpb "go-user-service/proto/gen"
|
||||||
"go-user-service/utils"
|
"go-user-service/utils"
|
||||||
|
"log"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@@ -32,13 +33,14 @@ func (u *UserService) Login(ctx context.Context, req *userpb.LoginRequest) (*use
|
|||||||
if user.Username != "" {
|
if user.Username != "" {
|
||||||
// 验证密码
|
// 验证密码
|
||||||
var crypto utils.Crypto
|
var crypto utils.Crypto
|
||||||
hashPassword, _ := crypto.PasswordEncryption(user.Password + user.Salt)
|
log.Println(req.Password + user.Salt)
|
||||||
|
verify := crypto.PasswordVerify(user.Password, req.Password+user.Salt)
|
||||||
|
|
||||||
if user.Password == hashPassword {
|
if verify {
|
||||||
token, _ := crypto.GenerateStateToken(32)
|
token, _ := crypto.GenerateStateToken(32)
|
||||||
userId := Snowflake.NextID()
|
tokenId := Snowflake.NextID()
|
||||||
db.Create(&models.UserToken{
|
db.Create(&models.UserToken{
|
||||||
ID: int8(userId),
|
ID: tokenId,
|
||||||
UserId: user.ID,
|
UserId: user.ID,
|
||||||
Token: token,
|
Token: token,
|
||||||
ExpirationTime: time.Now().Add(24 * time.Hour),
|
ExpirationTime: time.Now().Add(24 * time.Hour),
|
||||||
@@ -46,11 +48,11 @@ func (u *UserService) Login(ctx context.Context, req *userpb.LoginRequest) (*use
|
|||||||
UpdatedAt: time.Now(),
|
UpdatedAt: time.Now(),
|
||||||
})
|
})
|
||||||
return &userpb.LoginResponse{
|
return &userpb.LoginResponse{
|
||||||
UserId: userId,
|
UserId: user.ID,
|
||||||
Username: user.Username,
|
Username: user.Username,
|
||||||
Email: user.Email,
|
Email: user.Email,
|
||||||
AccessToken: token,
|
AccessToken: token,
|
||||||
ExpiresIn: 86400, // 1小时
|
ExpiresIn: 86400, // 24小时
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
return nil, status.Errorf(codes.Unauthenticated, "密码错误")
|
return nil, status.Errorf(codes.Unauthenticated, "密码错误")
|
||||||
@@ -78,12 +80,15 @@ func (u *UserService) Register(ctx context.Context, req *userpb.RegisterRequest)
|
|||||||
}
|
}
|
||||||
userId := Snowflake.NextID()
|
userId := Snowflake.NextID()
|
||||||
salt := crypto.GetRandString(10)
|
salt := crypto.GetRandString(10)
|
||||||
|
log.Println(req.Password + salt)
|
||||||
hashPassword, _ := crypto.PasswordEncryption(req.Password + salt)
|
hashPassword, _ := crypto.PasswordEncryption(req.Password + salt)
|
||||||
db.Create(&models.User{
|
db.Create(&models.User{
|
||||||
ID: int8(userId),
|
ID: userId,
|
||||||
Nickname: req.Nickname,
|
Nickname: req.Nickname,
|
||||||
Username: req.Username,
|
Username: req.Username,
|
||||||
Password: hashPassword,
|
Password: hashPassword,
|
||||||
|
Email: req.Email,
|
||||||
|
Phone: req.Phone,
|
||||||
Status: 1,
|
Status: 1,
|
||||||
Salt: salt,
|
Salt: salt,
|
||||||
CreatedAt: time.Now(),
|
CreatedAt: time.Now(),
|
||||||
|
|||||||
Reference in New Issue
Block a user