SnapDrop——只用浏览器就能跨平台点对点传文件的神器
2021/11/20 计算机 次 9 条
【2021年11月25日更新】输入暗号之后会自动生成一个二维码,对方不需要手动输入网址和暗号,只要扫描这个二维码在浏览器打开,就能建立连接。另外修改了一下设备的随机昵称,把原来英文昵称改成了中文,更接地气。
地址:https://snapdrop.fairysoft.net
最近因为疫情,又在家宅了半个月,每天除了吃饭睡觉打豆豆之外就是撸代码。今天SnapDrop2.0增强版终于完成了,突破了局域网的限制,不在同一局域网内的设备也能互相点对点传送文件了,双方只要输入同样的接头暗号就能建立连接。另外修复了Firefox无法接收文件的Bug。
你可能要说这个东西有什么鸟用,其实要说用处真不大。性能和稳定性都不如专门的软件,但是它有两个优点,一是不需要在设备上安装任何第三方的软件,直接用浏览器就能互传文件,比较方便;二是点对点的传输,不会有第三方看到你传的东西,隐私性好。
应用场景:
1.在外面某个地方比如说在单位同事的办公室,你需要把手机上的一个文件传到电脑上打印,而手边又没有数据线,或者你在家想传个图片或者文档到电脑,虽然有数据线可是你的Windows电脑却死活都连不上你的苹果手机。现在你不用在电脑和手机上安装任何第三方的软件,只要在电脑用Edge浏览器打开这个网址,输入接头暗号(如果手机跟电脑在同一局域网内的话可以不用输入接头暗号)。然后用你的手机相机扫一下电脑屏幕上的二维码,在safari浏览器中打开这个网址就能传文件到电脑了。
2.你要从安卓手机传一个图片或文档到你的iPad里(苹果手机的话直接用AirDrop就可以了),可是你iPad上又没有装微信或者其他软件,这时你可以在ipad上用Safari浏览器打开这个网址,然后在手机浏览器里输入这个网址或者扫描iPad上的二维码打开这个网址,就能发文件了。
3.你手机上有一个大文件想发送给朋友,但是没有WiFi,你们俩都不想浪费流量。这时候你可以在手机上开一个热点给你朋友连上,打开这个网址(因为属于同一内网,所以接头暗号可以输入也可不输入),另一方也打开这个网址,或者扫描这个二维码,就能直接发送文件了。数据是直接走的wifi传输不会用数据流量。
4.你跟冠希哥一样热爱摄影,有些私人作品想跟朋友分享,但是担心通过微信发送会留下记录,或者因为内容不和谐而无法发送甚至被封号。用这个来传送最合适不过了,不用担心隐私泄漏的问题。
浏览器兼容性:
微信浏览器只能发送不能下载,所以你在微信中打开了这个网页又想要接收文件的话,需要点击页面右上角然后选择在浏览器打开。推荐使用Edge、Firefox、Chrome、Safari这四款现代浏览器,华为和三星手机自带的浏览器也支持,小米手机自带浏览器不支持。
网络环境兼容性:
两台没有公网IP地址的设备(内网设备)要进行点对点的文件传输,需要进行内网穿透,俗话叫做打洞。在比较复杂的内网环境下打洞经常会失败。在没有服务器中转的情况下,这个问题目前是无法解决的。如果用服务器中转,也就不叫点对点了。如果遇到这种情况还是老老实实的找根数据线或者开热点分享吧。我实测了几种网络环境:
1.家庭宽带WiFi,因为都在同一个内网,设备之间互相通过内网IP就能访问,百分百成功。
2.手机开热点共享,这种网络环境也相当于一个内网,同上,百分百能成功。
3.家庭宽带内网中的设备跟手机移动网络之间互传,同运营商成功率比较高,比如我家是联通宽带,我用联通的5G网络跟家里的电脑互传文件,一般都没问题。跨运营商有时会发不出去。
4.两台手机都通过手机移动网络互传,目前看成功率还比较高,偶尔会无法发送,同上,同运营商成功率要高一点。
5.酒店商场等公共无线网络跟手机移动网络互传,估计是公共网络内部防火墙的原因,成功率比较低。
源码我已上传Github,项目地址:https://github.com/laukeng/snapdrop
使用微信扫一扫,捐赠服务器费用,感谢你的支持!