FileTransfer-Go 简介
FileTransfer-Go 是一个点对点文件传输工具,前端由 React 与 Next.js 构建,后端使用 Go 语言编写,传输环节依托 WebRTC 直连完成,不依赖第三方中转服务器,服务器端也不会留存文件内容。使用时无需注册账号,在浏览器中打开页面、建立连接,就能把文件、文字或屏幕画面直接送到对方设备,省掉了网盘中转和反复上传下载的步骤。它既可以当作日常临时传文件的轻量工具,也适合需要自建传输服务的个人和团队。
主要传输功能
- 多文件同传:一次选中多个文件批量发送,把整套资料或素材一次性交给对方,不必逐个上传。
- 文字快速分享:链接、验证码、代码片段或一段说明可以直接粘贴传输,不用另外打开聊天软件。
- 桌面实时共享:把当前屏幕画面推送出去,远程演示、讲解操作步骤或协助排查问题时都用得上。
- 端到端加密:传输内容经过加密处理,服务端不存储文件,数据流向和隐私控制权都留在两端设备上。
技术实现方式
- 前后端分工:界面层采用 Next.js、React 和 TypeScript,服务层基于 Go,兼顾页面交互与并发处理。
- 实时通信:结合 WebSocket 与 WebRTC 建立连接,连接状态会实时同步到界面上,方便判断当前进度。
- 持续更新:项目团队近期改进了移动端界面、WebRTC 链接恢复和错误提示,稳定性和易用性在逐步提升。
跨平台使用方式
- 多系统兼容:支持 Linux、macOS 和 Windows,不同系统之间互传文件无需额外转换。
- 响应式适配:页面适配手机、平板和电脑,移动端也能直接发起或接收文件。
- 单文件部署:以单个可执行文件的形式运行,不依赖额外的运行环境,方便放在自己的机器上。
- Docker 启动:提供一键 Docker 部署方案,用一条命令即可把服务拉起来,降低了自建门槛。
整体来看,FileTransfer-Go 把传输过程压缩成打开页面、建立连接、发送内容三个动作,适合临时传大文件、跨系统交换资料,或者希望数据不经过第三方服务器的使用者。偶尔传几个文件,用官网的网页版就足够;如果想让传输服务长期跑在自己的环境里,直接拿开源代码部署也是现成的选择。