不经过服务器:FilePizza 让你 5 分钟搭起浏览器点对点文件传输

发布时间:2026/9/17 22:24:08
不经过服务器:FilePizza 让你 5 分钟搭起浏览器点对点文件传输
不经过服务器FilePizza 让你 5 分钟搭起浏览器点对点文件传输【免费下载链接】filepizza:pizza: Peer-to-peer file transfers in your browser项目地址: https://gitcode.com/GitHub_Trending/fi/filepizzaFilePizza 是一个在浏览器内完成点对点文件传输的开源项目它基于 WebRTC让两个浏览器之间建立加密直连的技术把你的文件和对方的浏览器直连全程不经过任何中间服务器。你选完文件后会得到一条分享链接把链接发给对方即可直接下载无需注册、无需等待上传到网盘。项目用 Next.js 与 React 构建界面支持深色模式也可以在手机浏览器里使用。 它解决什么问题设想两个场景你要把一个 2GB 的录屏发给客户传统网盘要先注册、等上传完成、再等对方下载或者你要发送敏感文档不想让内容被存在某个公司的服务器上。FilePizza 就是为这类场景设计的——文件在两个浏览器之间直接传送服务器只负责转发接头信息信令从不接触文件内容。✨ 核心功能亮点直连传输进度可见、可中止上传页面上能看到每个连接者的下载进度想结束时点一下停止即可对方的下载随之结束。多文件一次传对方直接收 zip一次勾选多个文件没问题下载端会收到自动打包好的 zip 文件不用逐个下载再解压。密码保护与举报双保险可以为分享链接设置一个可选密码对方输对密码才能看到文件清单遇到违规内容时页面提供举报入口被举报后上传者页面会跳转到举报页并通知当前所有下载端中止传输。流式下载边下边存下载端通过 Service Worker浏览器中的后台任务机制把数据到达的部分即时写入磁盘不用等整份文件传完才开始保存。 5 分钟本地跑起 FilePizza最短路径是从源码直接运行git clone https://gitcode.com/GitHub_Trending/fi/filepizza pnpm install pnpm dev在浏览器打开本地开发地址即可开始上传。如果你需要生产环境仓库还通过 Docker Compose 提供了现成的构建与启动脚本一条命令就能把整套服务拉起来。 工作原理浏览器之间如何直传整个流程分三步上传者的浏览器向服务器申请一个频道获得一条带 8 位短码的分享链接。服务器只保存频道的元数据默认 1 小时后过期文件内容从不落盘。下载者打开链接服务器把短码还原成上传者的 PeerJS 标识相当于建立直连用的电话号码双方通过信令通道交换握手信息。两个浏览器之间建立直连数据通道。文件被切成不超过 256KiB 的块依次发送接收端对每个块做确认中途断开后可以从最后确认的偏移处断点续传。也就是说文件内容始终只在你和对方的浏览器之间流动。⚙️ 部署与自定义最小配置清单环境变量用途默认值REDIS_URL存放频道元数据的 Redis 连接串不设置则回退到内存存储未设置COTURN_ENABLED设为true时启用 TURN 中继帮助 NAT 后的对等方打通直连不启用TURN_HOSTTURN 服务器地址127.0.0.1TURN_REALM生成 TURN 凭证时使用的领域file.pizzaSTUN_SERVER未启用 TURN 时使用的 STUN 服务器帮助浏览器获知自己的公网地址以便直连stun:stun.l.google.com:19302PEERJS_HOST自托管 PeerJS 信令服务器地址0.peerjs.comPEERJS_PATH自托管 PeerJS 服务器的路径/❓ 常见问题文件会存在我部署的服务器上吗不会。内容在浏览器之间直传服务器只做链接解析与信令。唯一的代价是上传方要一直开着页面直到传输结束。同一条链接能发给多个人吗可以。把同一条短链接发给任意多人上传页会列出所有当前连接者方便你逐个管理。文件大小有上限吗没有硬性上限实际极限取决于浏览器内存与网络状况大文件建议在网络稳定的环境里测试。上传方关掉页面后会怎样链接无法再发起新的下载。但已经下载完成的人会继续为未完成的人做种子后者可以接着下完。传输是加密的吗WebRTC 通道由 DTLS通道的密钥交换与加密层自动加密。若再叠加密码保护只有输对密码的人才能获取文件清单并开始下载。 延伸阅读文件传输协议规范定义上传与下载的全部消息类型与完整对话流程照着它就能实现一个兼容客户端。Docker Compose 配置本地多容器部署的入口。许可证项目以 BSD 3-Clause 许可证发布披萨插图致谢 iblowyourdesign。想要一种中间方摸不到内容的文件分享方式FilePizza 提供了私密且开箱即用的答案——把仓库克隆下来跑起来5 分钟内你就能发出第一份文件。【免费下载链接】filepizza:pizza: Peer-to-peer file transfers in your browser项目地址: https://gitcode.com/GitHub_Trending/fi/filepizza创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考