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

4.0 KiB
Raw Blame History

📁 项目文件管理器

一个功能强大的Web文件管理器支持文件上传、下载、批量操作和文件夹压缩下载。

主要功能

🌐 两种访问方式

  1. Web界面 - 图形化文件管理界面(推荐)

    • 地址:https://your-domain.com/public/file-manager.html
    • 特点:直观易用,支持拖拽上传
  2. REST API - 完整的文件管理API

    • 基础地址:https://your-domain.com/api/v1/files
    • 特点:可集成到任何应用

🚀 核心功能

文件操作

  • 📤 上传文件 - 支持拖拽上传、多文件上传
  • 📥 下载文件 - 单文件直接下载
  • 📦 文件夹压缩下载 - 一键下载整个文件夹为ZIP
  • 📋 批量下载 - 选择多个文件/文件夹统一打包下载
  • 📁 创建文件夹 - 新建目录结构
  • ✏️ 重命名 - 文件和文件夹重命名
  • 🗑️ 删除 - 安全删除文件和文件夹
  • 🔍 搜索 - 快速搜索文件
  • 📊 文件信息 - 查看文件详细信息和预览

批量操作

  • ☑️ 全选/取消全选 - 快速选择所有文件
  • 📦 批量下载 - 多文件打包下载
  • 🎯 批量管理 - 支持后续扩展(批量删除、移动等)

🛠️ API 接口

文件列表

GET /api/v1/files/list?path=uploads&recursive=false

文件上传

POST /api/v1/files/upload
Content-Type: multipart/form-data

文件下载

GET /api/v1/files/download/{file_path}

文件夹压缩下载

POST /api/v1/files/download-folder-zip
Content-Type: application/json
{
  "path": "uploads"
}

批量压缩下载

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


享受高效的文件管理体验! 🎉