FilePizza 点对点文件传输的极简解决方案
Tools
FilePizza 点对点文件传输的极简解决方案
On this page

项目简介
FilePizza 是一个基于 WebRTC 技术实现的 开源点对点文件传输工具。与传统的上传-下载式文件共享不同,FilePizza 允许用户直接将文件从浏览器中“投递”给他人,无需先上传至服务器。
当用户选择文件后,应用会生成一个链接。其他人点击这个链接后,FilePizza 利用 WebRTC 建立点对点连接,文件直接从发送者的浏览器传到接收者的浏览器,实现真正的端到端传输。
特点亮点
- 🧠 无需注册、开箱即用:用户只需选择文件,即可生成可分享链接,访问即可接收。
- 🔒 端到端传输:文件不会存储在中间服务器上,确保隐私和传输安全。
- 🚀 基于 WebRTC 的高效传输:利用 WebRTC 建立连接,速度快、延迟低。
- 🖥️ 纯前端交互 + Node.js 中继服务器:中继服务器仅用于信令交换,不处理实际文件数据。
- 💻 开源可自部署:支持部署自己的中继服务器,适合内网/公司场景。
技术架构
- 前端:React + WebRTC
- 后端:Node.js(用于传递信令信息)
- 通信协议:WebRTC DataChannels 实现真正的 p2p 文件数据传输
- 文件大小限制:理论上取决于浏览器和网络条件,未依赖后端存储限制
典型应用场景
- 快速将大文件发送给朋友,而无需上传到网盘
- 跨网络设备直接传文件(如手机 ↔ 电脑)
- 公司内网中快速传输数据,无需部署共享盘
- 临时、安全地发送敏感文件(如代码、配置等)
自部署建议
对于有内网需求或隐私性要求的用户,推荐将 FilePizza 自部署。部署步骤大致如下:
- 克隆仓库:
git clone https://github.com/kern/filepizza.git
- 安装依赖并启动服务:
npm install
npm start
- 配置 Nginx 或反向代理,以支持 WebSocket 通信(用于 WebRTC 信令)。
类似项目对比
项目 | 技术 | 是否点对点 | 服务器负载 | 特点 |
---|---|---|---|---|
FilePizza | WebRTC | ✅ 是 | 低,仅信令 | 极速、安全 |
Snapdrop | WebRTC | ✅ 是 | 低,仅发现用 | UI 像 AirDrop |
WeTransfer | 上传-下载 | ❌ 否 | 高,需存储 | 适合持久分享 |
Firefox Send(已关闭) | 上传-下载 | ❌ 否 | 高 | 支持加密分享 |
推荐理由
我强烈推荐 FilePizza 给追求快速、轻量、安全文件传输体验的开发者和技术爱好者。特别是它无需中转上传的特性,在隐私保护和文件速度传输方面都有显著优势。
Discussion