package dto // LoginRequest 登录请求 // Logan.Li type LoginRequest struct { Username string `json:"username" binding:"required"` Password string `json:"password" binding:"required"` } // LoginResponse 登录响应 // Logan.Li type LoginResponse struct { Token string `json:"token"` ExpiresIn int64 `json:"expires_in"` // 访问令牌有效期(秒) RefreshToken string `json:"refresh_token"` // 一次性返回,前端按需本地保存 RefreshExpiresAt string `json:"refresh_expires_at"` // 刷新令牌到期时间(RFC3339) UserInfo UserInfoResponse `json:"user_info"` } // RefreshRequest 刷新访问令牌请求 // Logan.Li type RefreshRequest struct { RefreshToken string `json:"refresh_token" binding:"required"` } // LogoutRequest 登出请求(撤销刷新令牌,缺省也返回成功) // Logan.Li type LogoutRequest struct { RefreshToken string `json:"refresh_token"` } // UserInfoResponse 用户信息响应 // Logan.Li type UserInfoResponse struct { ID uint `json:"id"` Username string `json:"username"` Email string `json:"email"` Avatar string `json:"avatar"` Role string `json:"role"` } // ChangePasswordRequest 修改密码请求 // Logan.Li type ChangePasswordRequest struct { OldPassword string `json:"old_password" binding:"required"` NewPassword string `json:"new_password" binding:"required,min=6"` }