initial commit

This commit is contained in:
2025-05-22 19:39:08 +08:00
commit 531bb42d01
103 changed files with 10291 additions and 0 deletions

81
rpc/user.proto Normal file
View File

@ -0,0 +1,81 @@
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; // 用户角色列表,可选
}