syntax = "proto3"; package user; option go_package = "./user"; // 用户服务 - 注册、登录、登出、获取用户信息、健康检查 service User { // 健康检查 rpc Ping (PingRequest) returns (PingResponse); // 用户注册 rpc Register (RegisterRequest) returns (RegisterResponse); // 用户登录,返回 JWT Token rpc Login (LoginRequest) returns (LoginResponse); // 用户登出,可选实现 rpc Logout (LogoutRequest) returns (LogoutResponse); // 获取用户信息 rpc GetUserInfo (GetUserInfoRequest) returns (GetUserInfoResponse); } // 健康检查请求 message PingRequest { string ping = 1; } // 健康检查响应 message PingResponse { string pong = 1; } // 注册请求 message RegisterRequest { string username = 1; // 用户名 string password = 2; // 密码(明文或哈希后) string email = 3; // 邮箱,可选 } // 注册响应 message RegisterResponse { string user_id = 1; // 新注册用户的唯一 ID } // 登录请求 message LoginRequest { string username = 1; // 用户名 string password = 2; // 密码 } // 登录响应 message LoginResponse { string token = 1; // JWT 访问令牌 int64 expires_at = 2; // 过期时间(Unix 时间戳) } // 登出请求 message LogoutRequest { string token = 1; // 要废弃的 JWT } // 登出响应 message LogoutResponse { bool success = 1; // 是否登出成功 } // 获取用户信息请求 message GetUserInfoRequest { string user_id = 1; // 目标用户 ID } // 获取用户信息响应 message GetUserInfoResponse { string user_id = 1; // 用户唯一 ID string username = 2; // 用户名 string email = 3; // 用户邮箱 int64 created_at = 4; // 账号创建时间(Unix 时间戳) repeated string roles = 5; // 用户角色列表,可选 }