开源一个自己写的基于 WebRTC 传输的在线站。

58 天前
 molika

前几天一直在线传文件,后面就想着自己弄一个。 WebRTC 也更加放心。 这次直接体验了一把 nextjs + go 。 构建出来的文件直接单文件部署即可,前端资源也一并在二进制包。非常 nice 。 -port z 指定端口

目前已经实现了 文件传输。 桌面共享 开发中。

开源地址 https://github.com/MatrixSeven/file-transfer-go

体验地址 https://transfer.52python.cn/

佬们可以 star 或者拍代码(大部分 AI ) 哈哈哈

3274 次点击
所在节点    程序员
51 条回复
testliyu
57 天前
跨网络之间就没办法使用了
snow0
57 天前
学习了下。对于手机的 4G/5G 移动数据上网(几乎 100%是对称型 NAT ),不提供 TURN 中转服务的话几乎 100%会失败,对吗
molika
57 天前
@snow0 嗯嗯,依赖 nat 类型,但是我手机和电脑互传是没啥问题的。可能看地区。 ,不提供 TURN 中转服务,因为初心就是不过服务器。
molika
57 天前
@testliyu 跨网络依赖于你所在网络的 NAT 模型。 对称型 NAT 基本没希望了。
molika
57 天前
@Tink cli 下支持 这个厉害了
molika
57 天前
@Satansickle nat 模型
完全锥形 NAT ( Full Cone NAT ):所有外部请求都可以直接映射到内网设备,穿越最简单。
地址限制锥形 NAT ( Address-Restricted Cone NAT ):只允许来自已知 IP 的外部请求。
端口限制锥形 NAT ( Port-Restricted Cone NAT ):只允许来自已知 IP 和端口的请求。
对称 NAT ( Symmetric NAT ):为每个目标分配不同端口,点对点连接困难,需依赖 TURN 。

对称 NAT 没法打洞~
molika
57 天前
Wxh16144
57 天前
UI 不错,之前接触到一个「程序员小山与 Bug 」博主也写了一个类似的 https://github.com/sunzsh/internal-chat
keven1024
57 天前
我也晒晒我的开源项目 015 ,golang+vue(nuxt3),和 op 的功能差不多,但是 op 的传输方案是用 webrtc ,我这边用的是服务器存储.

我的项目相比 op 的优势在于我这个支持分片上传和秒传,对有大文件上传需求的用户更友好

https://github.com/keven1024/015


第二个优势是项目可扩展,目前基建差不多了,包括队列系统什么的,支持在原有文件上传基础上扩展新功能,现在加了一个图片压缩,未来会陆续加一些图片超分辨率,图片去背景等这种一次性场景的功能

molika
56 天前
@keven1024 就是为了不过服务器 所以才用 p2p 需求一样。 但是可能大部分不在乎这些。
molika
56 天前
@Wxh16144 不错

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1150088

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX