局域网传输工具
发表于:2025-01-07 23:50:39
看到程序员小山与Bug开源了一款 局域网文字/文件P2P传输工具 我在原基础上改造了一下,以下是功能简介:
项目中仅在线用户列表和WebRTC信令迫不得已需要一个轻量化的服务,其他数据传输都采用了基于WebRTC的点对点传输,不经过中间服务器,所以局域网内互传一些文字/文件都比较快。
场景:
例如一台手机要给另一台手机传输链接或文件,没有微信等软件/电脑同理...这是我的使用场景,原作者是,
比如新装的win系统需要从mac系统传一些需要🪜才能下载的软件或者搜到的一些东西。
界面:
可以在一个局域网中进行传输文字或者文件,不会经过服务器!保证了数据的安全和私密性。
可以发送文件,选择用户进行发送:
可以群组聊天,每个用户的 id 都是随机生成的一串数字。
如果有用户无法接收消息和发送消息就会显示为红色断联图标,再此状态下该用户无法进行文字传输和文件传输。
什么条件会这样?
在共享网络环境下,例如共享 WiFi,基站网络等环境下无法正常使用。
有发送进度条显示:
优点
无需安装任何软件,打开浏览器,无需登录直接传输。
缺点
接收大文件比较吃内存(单文件几百兆一般没问题)
场景:
比如新装的win系统需要从mac系统传一些需要🪜才能下载的软件或者搜到的一些东西
以下是开源原地址,可以去下载和使用:
我优化过的版本可以在左侧的工具箱中找到。
或者直接点击:https://transmit.rjjr.cn/
部署教程:我是直接将www 目录直接上传到服务器,大家也可以这样做,以下是作者的原话教程:
源码方式
- 安装nodejs,node版本没有测试,我用的是
16.20.2
- 下载源码(服务端仅需要
server
目录) - 进入
server
目录,运行npm install
- 运行
npm run start [port]
,例如npm run start 8081
二进制方式
- 下载对应平台的可执行文件,直接执行即可(服务端)
- 默认监听
8081
端口,可通过参数指定端口,例如./internal-chat-linux 8082
- 如果你用windows,可参考 https://v.douyin.com/CeiJahpLD/ 注册成服务
服务端nginx反向代理配置参考(可选)
服务端用反向代理的好处:可以直接用certbot申请https证书,然后直接用wss协议。 如果采用下方的配置反向代理,注意在客户端配置
wsUrl
变量的时候,需要加 /ws
,否则不用
location /ws {
proxy_pass http://localhost:8081;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
网页部署:
- 下载源码并修改
www/index.js
第一行代码wsUrl
变量(如果服务端配置了反向代理,这里路径最后要加/ws
,否则不用) - 直接将
www
用nginx部署成一个静态网站即可,具体配置参考nginxvhost.conf
。如果你没有域名,将server_name
写成_
即可(属于nginx基础知识) - 访问
http://your.domain.com/
即可
鸢栀
到青岛啦
发表于:2025-01-17 17:39:32
来自:中国 - 山东 - 青岛