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

51
rpc/file.proto Normal file
View File

@ -0,0 +1,51 @@
syntax = "proto3";
package file;
option go_package = "./file";
// 文件服务 - 上传图片、获取地址、删除文件等
service File {
// 上传文件(图片/头像/壁纸等)
rpc Upload (UploadRequest) returns (UploadResponse);
// 获取文件访问链接(带签名,防盗链)
rpc GetFileUrl (GetFileUrlRequest) returns (GetFileUrlResponse);
// 删除文件
rpc Delete (DeleteRequest) returns (DeleteResponse);
}
// 上传文件请求
message UploadRequest {
string filename = 1; // 文件名(建议客户端传原始名,服务端会生成唯一名)
string content_type = 2; // 文件类型(如 image/jpeg
bytes content = 3; // 文件二进制内容base64 编码由客户端完成)
string folder = 4; // 可选,文件夹或分类路径,如 "avatars"、"wallpapers"
}
// 上传响应
message UploadResponse {
string file_id = 1; // 文件唯一 ID或路径
string url = 2; // 可访问 URL带 CDN 或签名)
}
// 获取访问链接请求
message GetFileUrlRequest {
string file_id = 1; // 文件唯一 ID 或路径
}
// 获取访问链接响应
message GetFileUrlResponse {
string url = 1; // 可访问链接
}
// 删除文件请求
message DeleteRequest {
string file_id = 1; // 要删除的文件 ID
}
// 删除文件响应
message DeleteResponse {
bool success = 1; // 是否删除成功
}