FoomClous

上传架构 📤

当前流程:服务器中转上传(代理模式)

目前,FoomClous 采用 服务器中转 的上传策略,这种设计确保了跨平台存储的统一性与安全性。

🔄 核心步骤

  1. 客户端 -> 服务器:前端上传组件将文件发送到后端服务器(/api/upload 接口)。
  2. 服务器缓存:后端服务器接收文件并将其保存到临时目录(backend/uploads)。
  3. 服务器 -> 存储源:存储管理器 (StorageManager) 根据当前激活的提供商,将临时文件实际推送到对应端(OneDrive, S3, WebDAV 等)。
  4. 清理与反馈:上传成功后,服务器会删除临时文件,并通知前端更新列表。

✅ 优势

⚠️ 局限性

[!NOTE] 尽管代理模式增加了服务器负载,但它极大简化了前端逻辑,并提供了最佳的隐私保护。


/ytdlp 下载后转存,同样是服务器中转

  1. Telegram -> 后端:你在 Telegram 中发送 /ytdlp <url>,后端接收链接并创建下载任务。
  2. 服务器下载缓存:后端在工作目录中创建任务临时目录(由 YTDLP_WORK_DIR 决定),然后执行 yt-dlp 将媒体下载到该目录。
  3. 选择主输出文件:下载完成后,从任务目录中挑选主要输出文件(通常是合并后的 mp4,或音频文件)。
  4. 服务器 -> 存储源:后端复用现有上传链路,通过 StorageManager 将该文件上传到“当前激活的存储提供商”(OneDrive / S3 / WebDAV / Local 等)。
  5. 清理与反馈:上传成功或失败后,后端会清理任务临时目录,并在 Telegram 中更新该任务的状态信息。

返回文档中心