- 新增 upload.rs 模块,支持 multipart/form-data 文件上传 - 文件按日期存储在 storage/YYYY-MM-DD/ 目录下 - 使用 UUID 生成唯一文件名,保留原始扩展名 - 添加 axum-extra, uuid, chrono 依赖 新增测试用例: - config_test.rs: 6 个测试 (配置结构验证) - router_test.rs: 11 个测试 (路由匹配逻辑) - handler_test.rs: 8 个测试 (请求处理) - upload_test.rs: 13 个测试 (文件上传功能) 其他改进: - 优化 handler.rs 代码注释 - 更新 .gitignore 忽略 storage/ 和 .claude/ - 添加 CLAUDE.md 项目指南文档 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
41 lines
942 B
TOML
41 lines
942 B
TOML
[package]
|
|
name = "mock_server"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[dependencies]
|
|
# 核心 Web 框架
|
|
axum = "0.8.8"
|
|
axum-extra = { version = "0.10", features = ["multipart"] }
|
|
# 异步运行时
|
|
tokio={version = "1.48.0",features = ["full"]}
|
|
# 异步文件操作与流处理工具
|
|
tokio-util = {version = "0.7.17",features = ["io"]}
|
|
futures-util = "0.3.31"
|
|
|
|
# 序列化与 YAML 解析
|
|
serde = {version = "1.0.228",features = ["derive"]}
|
|
serde_yaml = "0.9.34+deprecated"
|
|
serde_json = "1.0.147"
|
|
|
|
# 物理目录递归扫描工具
|
|
walkdir = "2.5.0"
|
|
|
|
# UUID 生成(用于唯一文件名)
|
|
uuid = { version = "1.0", features = ["v4", "serde"] }
|
|
|
|
# 日期时间处理
|
|
chrono = "0.4"
|
|
|
|
tracing="0.1.44"
|
|
tracing-subscriber = "0.3.22"
|
|
|
|
# 性能优化:快速哈希(可选,用于路由匹配)
|
|
#dashmap = "7.0.0-rc2"
|
|
# 热加载支持(扩展功能)
|
|
#notify = "8.2.0"
|
|
# 路径处理
|
|
#pathdiff = "0.2.3"
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3.24.0" |