feat: 添加用户认证模块
- main.go: 初始化 User/Role 模型、UserRepository、AuthService 和 AuthHandler - 添加 /auth/register、/auth/login、/auth/me 路由 - auth_handler.go: 新增 GetCurrentUser 接口获取当前用户信息 - .gitignore: 添加 .bitfun/ 目录忽略 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -78,3 +78,27 @@ func (h *AuthHandler) Register(c *gin.Context) {
|
||||
"email": user.Email,
|
||||
})
|
||||
}
|
||||
|
||||
// GetCurrentUser 获取当前登录用户信息
|
||||
func (h *AuthHandler) GetCurrentUser(c *gin.Context) {
|
||||
userID, exists := c.Get("user_id")
|
||||
if !exists {
|
||||
c.JSON(http.StatusUnauthorized, gin.H{"error": "user not found in context"})
|
||||
return
|
||||
}
|
||||
|
||||
user, err := h.authService.GetUserByID(userID.(string))
|
||||
if err != nil {
|
||||
c.JSON(http.StatusNotFound, gin.H{"error": "user not found"})
|
||||
return
|
||||
}
|
||||
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"id": user.ID,
|
||||
"username": user.Username,
|
||||
"email": user.Email,
|
||||
"role_id": user.RoleID,
|
||||
"is_active": user.IsActive,
|
||||
"created_at": user.CreatedAt,
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user