多协议支持
当前默认启用 HTTP/HTTPS、FTP,并为 BitTorrent、ED2K、迅雷、QQ 旋风、快车、HLS/DASH 等协议保留了可选实现与后续迁移入口。
# 从源码构建
git clone https://github.com/cuihairu/falcon.git
cd falcon
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release
cmake --build build --config Release当前文档以源码构建为主,不再假设 Homebrew、APT 或预编译安装包已经对外发布。
# 下载单个文件
falcon-cli https://example.com/file.zip
# 多线程下载
falcon-cli https://example.com/large.zip -c 5
# 从文件批量读取 URL
falcon-cli -i urls.txt -j 3
# 通过代理下载
falcon-cli https://example.com/file.zip --proxy http://127.0.0.1:7890#include <falcon/falcon.hpp>
int main() {
falcon::DownloadEngine engine;
falcon::DownloadOptions options;
options.max_connections = 5;
auto task = engine.add_task(
"https://example.com/file.zip",
options
);
if (task) {
engine.start_task(task->id());
task->wait();
}
return 0;
}falcon/
├── packages/
│ ├── libfalcon-core/ # 核心下载引擎、任务模型、事件系统
│ ├── libfalcon-protocols/ # 标准下载协议
│ ├── libfalcon-storage/ # 对象存储与资源浏览
│ ├── libfalcon-drives/ # 网盘与分享链能力
│ ├── falcon-cli/ # 命令行工具
│ └── falcon-daemon/ # 后台守护进程
├── apps/
│ ├── desktop/ # 桌面应用
│ └── browser_extension/ # 浏览器扩展
└── docs/ # 项目文档| 协议 | 状态 | 说明 |
|---|---|---|
| HTTP/HTTPS | 已启用 | 断点续传、分块下载 |
| FTP/FTPS | 已启用 | 主动/被动模式 |
| BitTorrent | 可选实现 | 代码库内有实现,当前未统一接入默认自动注册 |
| ED2K | 可选实现 | 代码库内有实现,默认构建通常关闭 |
| 迅雷 | 可选实现 | 代码库内有实现,默认构建通常关闭 |
| QQ旋风 | 可选实现 | 代码库内有实现,默认构建通常关闭 |
| 快车 | 可选实现 | 代码库内有实现,默认构建通常关闭 |
| HLS/DASH | 可选实现 | 代码库内有实现,默认构建通常关闭 |
欢迎贡献代码、报告问题或提出建议!
Apache License 2.0