Files
juwan-backend/desc/rpc/objectstory.proto
2026-02-27 19:17:01 +08:00

35 lines
858 B
Protocol Buffer

syntax = "proto3";
package file;
option go_package = "./pb";
// 文件上传的元数据信息
message UploadFileMetadataReq {
string fileName = 1;
int64 fileSize = 2;
string fileType = 3; // avatar, chat, etc.
string userId = 4;
bytes fileData = 5; // 如果文件很小可以直接传,大文件建议API层直接传S3,RPC只传元数据
}
message UploadFileResp {
string url = 1;
string fileId = 2;
}
message GetFileUrlReq {
string fileId = 1;
string userId = 2; // 用于鉴权
}
message GetFileUrlResp {
string url = 1; // 可能是带签名的临时 URL
}
service FileService {
// 简单上传(适合小文件,或保存元数据)
rpc Upload(UploadFileMetadataReq) returns (UploadFileResp);
// 获取文件访问链接(处理私有文件的鉴权)
rpc GetFileUrl(GetFileUrlReq) returns (GetFileUrlResp);
}