qwen_agent/markdown/FILE_MANAGER_README.md
2025-11-16 12:25:45 +08:00

161 lines
4.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 📁 项目文件管理器
一个功能强大的Web文件管理器支持文件上传、下载、批量操作和文件夹压缩下载。
## ✨ 主要功能
### 🌐 两种访问方式
1. **Web界面** - 图形化文件管理界面(推荐)
- 地址:`https://your-domain.com/public/file-manager.html`
- 特点:直观易用,支持拖拽上传
2. **REST API** - 完整的文件管理API
- 基础地址:`https://your-domain.com/api/v1/files`
- 特点:可集成到任何应用
### 🚀 核心功能
#### 文件操作
- 📤 **上传文件** - 支持拖拽上传、多文件上传
- 📥 **下载文件** - 单文件直接下载
- 📦 **文件夹压缩下载** - 一键下载整个文件夹为ZIP
- 📋 **批量下载** - 选择多个文件/文件夹统一打包下载
- 📁 **创建文件夹** - 新建目录结构
- ✏️ **重命名** - 文件和文件夹重命名
- 🗑️ **删除** - 安全删除文件和文件夹
- 🔍 **搜索** - 快速搜索文件
- 📊 **文件信息** - 查看文件详细信息和预览
#### 批量操作
- ☑️ **全选/取消全选** - 快速选择所有文件
- 📦 **批量下载** - 多文件打包下载
- 🎯 **批量管理** - 支持后续扩展(批量删除、移动等)
## 🛠️ API 接口
### 文件列表
```http
GET /api/v1/files/list?path=uploads&recursive=false
```
### 文件上传
```http
POST /api/v1/files/upload
Content-Type: multipart/form-data
```
### 文件下载
```http
GET /api/v1/files/download/{file_path}
```
### 文件夹压缩下载
```http
POST /api/v1/files/download-folder-zip
Content-Type: application/json
{
"path": "uploads"
}
```
### 批量压缩下载
```http
POST /api/v1/files/download-multiple-zip
Content-Type: application/json
{
"paths": ["uploads", "data/123"],
"filename": "batch_download.zip"
}
```
### 其他接口
- `POST /api/v1/files/create-folder` - 创建文件夹
- `POST /api/v1/files/rename` - 重命名
- `POST /api/v1/files/move` - 移动文件
- `POST /api/v1/files/copy` - 复制文件
- `DELETE /api/v1/files/delete` - 删除文件
- `GET /api/v1/files/search` - 搜索文件
- `GET /api/v1/files/info/{path}` - 获取文件信息
## 🎨 界面特性
### 响应式设计
- ✅ 桌面端完整功能
- ✅ 移动端友好界面
- ✅ 自适应布局
### 用户体验
- 🎨 现代化UI设计
- 📱 直观的图标和颜色
- ⚡ 快速响应的交互
- 💬 友好的提示信息
### 高级功能
- 📁 面包屑导航
- 🔍 实时搜索过滤
- 📊 文件信息预览
- 🎯 智能文件类型识别
## 🔧 技术特性
### 安全性
- 🛡️ 路径验证和限制
- 📏 文件大小限制500MB
- 🔢 文件数量限制10000个
- 🚫 隐藏文件过滤
### 性能优化
- ⚡ 异步文件操作
- 📦 内存中ZIP压缩
- 🔄 流式文件下载
- 💾 智能缓存控制
### 兼容性
- 🌐 标准WebDAV协议
- 📱 所有现代浏览器
- 🔧 可扩展的API设计
- 📊 完整的错误处理
## 📝 使用方法
### 快速开始
1. 访问文件管理器:`https://your-domain.com/public/file-manager.html`
2. 使用拖拽或点击按钮上传文件
3. 点击文件夹旁的"下载ZIP"按钮下载整个文件夹
4. 使用"批量操作"模式选择多个文件统一下载
### 高级用法
1. 点击"批量操作"进入批量选择模式
2. 使用"全选"快速选择所有文件
3. 混合选择文件和文件夹进行批量下载
4. 使用搜索功能快速定位文件
## 🚀 部署说明
### 环境要求
- Python 3.8+
- FastAPI
- 现代浏览器
### 部署步骤
1. 安装依赖:`pip install fastapi uvicorn`
2. 启动服务:`uvicorn fastapi_app:app --host 0.0.0.0 --port 8001`
3. 访问:`http://localhost:8001/public/file-manager.html`
### 配置选项
- `PROJECTS_DIR`: 项目根目录(默认:`projects`
- `MAX_ZIP_SIZE`: 最大ZIP文件大小默认500MB
- `MAX_FILES`: 最大文件数量默认10000
## 📄 许可证
MIT License - 详见 LICENSE 文件
## 🤝 贡献
欢迎提交 Issue 和 Pull Request
---
**享受高效的文件管理体验!** 🎉