syntax = "proto3"; package topfans.common; option go_package = "github.com/topfans/backend/pkg/proto/common;common"; // 通用响应结构 // code 字段语义:google.rpc.Code 数字 // 0 = OK // 3 = INVALID_ARGUMENT (旧 HTTP 400) // 5 = NOT_FOUND (旧 HTTP 404) // 7 = PERMISSION_DENIED (旧 HTTP 403,账号封禁/冻结) // 8 = RESOURCE_EXHAUSTED (旧 HTTP 429,限流/冷静期) // 13 = INTERNAL (旧 HTTP 500,内部错) // 16 = UNAUTHENTICATED (旧 HTTP 401,鉴权失败) message BaseResponse { uint32 code = 1; // google.rpc.Code 数字(0=OK, 3=INVALID_ARGUMENT, 5=NOT_FOUND, 7=PERMISSION_DENIED, 8=RESOURCE_EXHAUSTED, 13=INTERNAL, 16=UNAUTHENTICATED) string message = 2; // 错误信息(成功时为空) int64 timestamp = 3; // 响应时间戳(Unix时间戳毫秒) } // 分页请求--如好友功能 message PageRequest { int32 page = 1; // 页码,从1开始 int32 page_size = 2; // 每页数量 } // 分页响应 message PageResponse { int32 page = 1; int32 page_size = 2; int64 total = 3; // 总记录数 int32 total_pages = 4; // 总页数 } // 空消息(用于无参数的RPC方法) message Empty { }