feat: harden auth and stream uploads

This commit is contained in:
237899745
2026-07-25 18:42:51 +08:00
parent f389dfb567
commit f3c7a77a37
26 changed files with 1006 additions and 561 deletions

View File

@@ -30,53 +30,22 @@
## 目录结构
> 说明:以下为目标目录结构(规划),会随实现逐步补齐。
```
imageforge/
├── Cargo.toml
├── src/
│ ├── main.rs # 入口
│ ├── config.rs # 配置管理
│ ├── error.rs # 错误处理
│ ├── lib.rs
│ ├── api/ # API 路由
│ ├── mod.rs
│ │ ├── auth.rs # 认证相关
│ │ ├── compress.rs # 压缩相关
├── user.rs # 用户相关
└── admin.rs # 管理员相关
│ │
│ ├── services/ # 业务逻辑
│ │ ├── mod.rs
│ │ ├── compress.rs # 压缩服务
│ │ ├── auth.rs # 认证服务
│ │ ├── user.rs # 用户服务
│ │ └── storage.rs # 存储服务
│ │
│ ├── models/ # 数据模型
│ │ ├── mod.rs
│ │ ├── user.rs
│ │ ├── image.rs
│ │ └── api_key.rs
│ │
│ ├── compress/ # 压缩核心
│ │ ├── mod.rs
│ │ ├── png.rs # PNG 压缩oxipng + pngquant
│ │ ├── jpeg.rs # JPEG 压缩mozjpeg
│ │ ├── webp.rs # WebP 压缩
│ │ └── avif.rs # AVIF 压缩
│ │
│ └── middleware/ # 中间件
│ ├── mod.rs
│ ├── auth.rs # 认证中间件
│ └── rate_limit.rs # 限流中间件
├── migrations/ # 数据库迁移
├── static/ # 静态资源
├── frontend/ # 前端项目
└── docker/ # Docker 配置
│ ├── main.rs # API / Worker 进程入口
│ ├── auth.rs # JWT 签发与解析
│ ├── config.rs # 环境变量配置
│ ├── error.rs # 统一错误响应
├── api/ # HTTP 路由、鉴权、压缩、管理后台
│ ├── services/ # 压缩、存储、计费、限速、邮件等服务
└── worker/ # Redis Streams 消费与任务处理
├── migrations/ # SQLx 数据库迁移
├── frontend/src/ # Vue3 管理端与用户端
├── docker/ # 镜像、Compose 与 Nginx 配置
├── docs/ # 设计、API、部署与运维文档
└── scripts/ # 部署和质量回归脚本
```
## 快速开始