V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
king888
V2EX  ›  程序员

网盘聚合开源项目意见收集

  •  
  •   king888 · 2023-03-06 09:40:32 +08:00 · 5961 次点击
    这是一个创建于 662 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目起因是觉得 alist 不好用,设置太繁琐了

    然后决定自己开源一款,目前进度已经写出部分了,名称暂定叫 xlist (征集项目名称)

    整个项目将分为 PC 客户端给普通用户使用,服务器端给程序员 /站长使用,以后看反响是否出 App 端

    目前将要开发的功能:

    • 简单操作即可连接多个网盘 /账号
    • 可将多个网盘文件路径映射 /挂载到 xlist 资源管理器
    • xlist 资源管理器提供 http/web, smb ,ftp ,webdav 服务
    • web 服务支持模板化,让用户自定义站点

    现在征集家人们对这块还有没什么其它功能需求:

    • 例如提供 oss 服务,提供 api 服务支持图片处理什么的
    57 条回复    2024-11-07 11:02:15 +08:00
    xiazhiyuan
        1
    xiazhiyuan  
       2023-03-06 10:10:42 +08:00
    老哥可以来个 mac 客户端吗
    zlowly
        2
    zlowly  
       2023-03-06 10:13:06 +08:00
    请问打算用什么语言开发?能否在比较老旧的路由器上跑?
    Bazingal
        3
    Bazingal  
       2023-03-06 10:18:30 +08:00   ❤️ 3
    那么多名字可以取为什么要碰瓷 alist 呢?
    king888
        4
    king888  
    OP
       2023-03-06 10:22:53 +08:00
    @xiazhiyuan
    @zlowly

    可以的,electron+golang

    @Bazingal 只是暂定,你觉得碰瓷,那就改不用不用了,兄弟有没推荐
    richzhu
        5
    richzhu  
       2023-03-06 10:24:28 +08:00   ❤️ 2
    老哥一定要有相册功能,还有最好像 nextcloud 可以加密存储,各个平台客户端一定要有,满足以上条件我可以付费
    sypopo
        6
    sypopo  
       2023-03-06 10:26:13 +08:00
    提供 http/web, smb ,ftp ,webdav 服务不错。
    king888
        7
    king888  
    OP
       2023-03-06 10:28:19 +08:00
    @richzhu 加密存储我确实有想过的,相册这个倒没怎么留意,不管怎样,只要有需求,安排!
    glaucus
        8
    glaucus  
       2023-03-06 10:28:59 +08:00   ❤️ 2
    目前使用 Alist 遇到的问题
    1 、各平台的刷新令牌没有统一管理的方式,每次添加存储都要填写一遍
    2 、目前阿里云 Open 接口没法挂载分享链接,不知道能不能解决
    D2h0VL89HMAU417B
        9
    D2h0VL89HMAU417B  
       2023-03-06 11:05:57 +08:00   ❤️ 1
    加油
    nullboy
        10
    nullboy  
       2023-03-06 11:09:34 +08:00   ❤️ 1
    alist 隐藏目录不好用,添加存储默认公开不合适
    besscroft
        11
    besscroft  
       2023-03-06 11:14:28 +08:00   ❤️ 3
    我也正在做一款,取名字叫 DiyFile ,做着好玩的哈哈,第一次做“产品”,就当练手了,确实要踩很多坑,有很多路要走。加油!
    https://github.com/besscroft/diyfile
    ShunYea
        12
    ShunYea  
       2023-03-06 11:16:57 +08:00   ❤️ 1
    这个项目刚需啊,支持支持!
    MX123
        13
    MX123  
       2023-03-06 11:19:57 +08:00   ❤️ 1
    alist 的本地复制到网盘会在先 copy 到 temp 目录再上传到网盘,占用空间。
    totoro625
        14
    totoro625  
       2023-03-06 11:32:48 +08:00   ❤️ 1
    建议融合一下 https://cloudreve.org/ 的功能
    hpan
        15
    hpan  
       2023-03-06 11:34:45 +08:00
    希望大佬可以顺便提供 100T 的免费不限速网盘
    kaiger
        16
    kaiger  
       2023-03-06 11:45:15 +08:00   ❤️ 1
    xcloud 这个名字怎么样
    oneisall8955
        17
    oneisall8955  
       2023-03-06 13:07:45 +08:00 via Android   ❤️ 1
    订阅分享,增量转存功能!!!

    参考: https://github.com/adminpass/aliyundrive-subscribe

    这个项目有点 bug ,不过整体能用
    dzdh
        18
    dzdh  
       2023-03-06 13:09:00 +08:00
    求支持 mega
    MaxFang
        19
    MaxFang  
       2023-03-06 13:11:16 +08:00
    会有预览功能么
    sunfly
        20
    sunfly  
       2023-03-06 13:19:55 +08:00
    起个名字,XPan ,简称 XP:doge:
    IDAEngine
        21
    IDAEngine  
       2023-03-06 13:31:59 +08:00
    @glaucus onedrive 令牌会过期,然后又要重新走一遍流程,有点垃圾
    jiangzm
        22
    jiangzm  
       2023-03-06 13:38:23 +08:00
    不太理解难道 alist 配置比新搞个项目还麻烦吗,alist 体验个人人为还可以, 因为这个工具本来就不是给小白用户使用的。
    AlkaidHe
        23
    AlkaidHe  
       2023-03-06 13:48:16 +08:00
    多用户隔离
    shalingye
        24
    shalingye  
       2023-03-06 14:21:56 +08:00   ❤️ 1
    建议参考一下 sftpgo ( https://github.com/drakkan/sftpgo )的一些特点,希望做出一款不仅提供齐全的网盘服务,在数据、带宽、协议、在线浏览、安全、语言等方面也都面面俱到的软件,可以出赞助费。
    king888
        25
    king888  
    OP
       2023-03-06 14:27:01 +08:00
    @kaiger @sunfly 好名字,不错的参考,感谢支持

    @dzdh 我会研究下 mega ,可以实现的话后面都会加入支持。目前设计网盘连接驱动是插件化,这样方便同学按需扩展

    @sunfly 会有预览的

    @AlkaidHe 多用户隔离,有没具体的使用场景介绍一下

    @jiangzm 麻烦到不至于,只是刚好有这时间,想做就做了
    alist 的交互体验我感觉还是差了些的,像是接入阿里网盘,需要用户自己去抓包找出 token ,然后再回来填上去

    我目前优化的流程是,自动调用本地安装的浏览器,打开阿里网盘让用户登录,用户只需登录这步操作,程序监控到 token 就自动关闭浏览器完成接入
    bjzhush
        26
    bjzhush  
       2023-03-06 14:49:33 +08:00   ❤️ 2
    没觉得 xlist 就碰瓷了,干脆起名叫 zlist ,最终版本
    byte10
        27
    byte10  
       2023-03-06 14:49:58 +08:00   ❤️ 2
    我有一个需求上次有发布过的,应该是刚需来的,实现起来也是很简单。https://www.v2ex.com/t/918449#reply9

    需求:
    因为阿里云盘和天翼云盘都支持使用 alist 挂载 webdav ,然后都不限速,非常的方便在线观看。但是存放到云盘上的电影可能会敏感被和谐掉。

    webdavd 插件实现:
    最近也有在了解 流加密,有 RC4 等 。为了算法的简易,我觉得最简单的方式就是,对密码进行 MD5 ,生成的 16 个字节数组,然后明文的每一个字节对 16 进行取模 得到 index ( 1001 、0110 ),用数组中 index 位置的字节,再和明文做 非运算加密。

    解密就是返过来,得到每个 index 和 MD5 字节数组倒推 解密的数组。然后再使用密文和解密数组的对应就可以进行解码。

    如果没人去搞,那么我就去搞一下咯😁
    byte10
        28
    byte10  
       2023-03-06 15:19:46 +08:00
    补充一下,刚写错了,做 XOR 异或运算
    hxse
        29
    hxse  
       2023-03-06 16:06:11 +08:00   ❤️ 1
    用过 alist 感觉有几点不便, 希望有如下功能
    1. 可以轻松挂载其他人的 alist, xlist 网盘, 这样有利于社区分享
    2. 好用的视频播放器, alist 的视频播放器太简陋了, 连上一个,下一个, 全屏按钮都没有
    3. 可以用手机的视频播放器, 通过 webdav, ftp 的方式, 直接播放 alist, xlist 网盘的视频内容, 所以希望 xlist 提供这样的转换链接
    4. 搜索功能, 可以一次性搜索, 所有已挂载的网盘的文件
    winsunz
        30
    winsunz  
       2023-03-06 17:51:06 +08:00   ❤️ 1
    叫集盘 doge
    jiangzm
        31
    jiangzm  
       2023-03-06 18:22:38 +08:00
    @king888 #25 阿里云盘之前是没有开放接口,用的是 web 系统接口,现在已经开放了接口扫码登录下即可。 你要实现的话也不用监控浏览器,申请下开放接口能拿到授权回调信息。
    jiangzm
        32
    jiangzm  
       2023-03-06 18:25:52 +08:00   ❤️ 1
    @sunfly @king888 panhub 这个名怎么样
    king888
        33
    king888  
    OP
       2023-03-06 18:48:21 +08:00 via iPhone
    @jiangzm 主要是是为了一致交互逻辑,只要网盘还提供 web 服务,还是通过浏览器好些,而且通过浏览器能直接拿到各种数据,用户正常登录操作就行,不需要别的心智负担
    Tan35haha
        34
    Tan35haha  
       2023-03-06 19:51:26 +08:00 via iPhone   ❤️ 1
    @king888 看到你的名字 可以考虑 kinglist 也可以不用纠结于 list ,你自己喜欢就行
    Fucter
        35
    Fucter  
       2023-03-06 19:53:04 +08:00 via Android   ❤️ 1
    直链 A 直接永久解析真实地址
    bnull
        36
    bnull  
       2023-03-06 19:57:19 +08:00   ❤️ 1
    能不通过第三方加密分享链接,比如 xxx.com/xxxx 转到 xxx.com/xxx/xxx.txt 这个文件之类的
    ysc3839
        37
    ysc3839  
       2023-03-06 20:05:02 +08:00 via Android
    如果还能改的话,建议使用 Node.js ,做成 app 的话可以直接用 Electron ,做成服务端的话可以白嫖许多免费的 Serverless 服务,目前市面上绝大多数 Serverless 服务都至少支持 Node.js 。
    qingmuhy0
        38
    qingmuhy0  
       2023-03-06 20:30:10 +08:00 via iPhone   ❤️ 1
    能够支持命令行的同步吧,不知道是不是我没发现,alist 想要实现网盘定期同步只能 webdav+rclone ,效率有点差。如果有命令行直接操作就好了,就是不知道同步操作会不会触碰到网盘的 API 限制。
    Cascable
        39
    Cascable  
       2023-03-06 21:00:20 +08:00   ❤️ 1
    指环云
    指环盘
    RingDrive 铃铛

    The One Rule Them All
    Bingchunmoli
        40
    Bingchunmoli  
       2023-03-06 21:18:39 +08:00 via Android
    alist 的添加问题,一个分享链接自动解析可以做到的问题,做了几个输入框,前期 ui 还贼查
    ttyhtg
        41
    ttyhtg  
       2023-03-06 21:42:29 +08:00   ❤️ 1
    一步梭哈,就叫:Allpan
    felixlong
        42
    felixlong  
       2023-03-06 22:17:35 +08:00   ❤️ 1
    微软叫 OneDrive , 你可以叫 MultiDrives.
    atpx4869love
        43
    atpx4869love  
       2023-03-06 22:35:41 +08:00
    好棒的想法,希望能早日用上大佬的项目
    ButcherHu
        44
    ButcherHu  
       2023-03-07 10:02:38 +08:00   ❤️ 1
    哈哈如果可以的话希望能调用本机的 ffmpeg 串流视频,除了灯神改的 filebrowser 还没看到这样做的,可能太小众了,但是这样可以不用媒体库软件直接文件夹管理视频。
    qingmuhy0
        45
    qingmuhy0  
       2023-03-07 10:09:15 +08:00   ❤️ 1
    @qingmuhy0 rclone 对于文件名的处理有不少嘈点。完全做不到透明传输。

    1. 文件名太长会因为网盘文件系统传不了
    2. 文件名有特殊字符又会因为不知道什么的原因无法读取

    https://m.cmx.im/@qingmuhy/109979536957722714

    所以期待老哥的作品。
    mikeying
        46
    mikeying  
       2023-03-07 14:57:22 +08:00   ❤️ 1
    加油,期待早日用上大佬的作品
    AlkaidHe
        47
    AlkaidHe  
       2023-03-07 22:32:30 +08:00   ❤️ 1
    @king888 #25 多用户隔离,简单来说,
    用户空间、团队空间、公共空间,
    用户 a 存到用户空间的照片,团队或其他用户没人能看到,存在团队空间,这个团队的人都能看到,存到公共空间所有人都能看到。
    属于网盘基操,实现也比较简单,
    例如各种盘挂载为本地路径 /data/usera/aliyun
    (url https://alist.com/usera/aliyun
    基于 linux 文件系统和用户管理就能实现最简单的,玩的花点就是 md5 命名文件只存一份,用数据库或 inode 索引,我是这么想的,自认为没毛病,有问题欢迎大家指正
    king888
        48
    king888  
    OP
       2023-03-08 08:46:28 +08:00
    @Tan35haha
    @Cascable
    @ttyhtg
    @felixlong
    @atpx4869love
    @felixlong
    @mikeying

    感谢支持,还有没有 @的同学,真的非常感谢,起码让我知道在做的事情是别人需要或者是想用的

    @AlkaidHe
    这在我看来,应该是属于企业级的需求了,类似买个网盘的 vip ,买大容量空间,然后划分不同账号管理,这个我前期在代码会预留好结构。目前前期的计划是优先完成初版,这功能后面慢慢会完善。

    @qingmuhy0
    文件名这问题我会留意,到时候测试看看如何解决优化

    @ButcherHu
    调用 ffmpeg 串流视频我会去研究下如何整合进来

    @qingmuhy0
    这两天有在看 rclone 源码,同步功能会计划整合的;

    @ysc3839
    白嫖 serverless ,这是我没想到的,不过 go 的话可以用 replit 白嫖后端服务,后面写个模板,大家复制就可以了

    @byte10
    和谐这个应该是文件在网盘的 hash 值给标记了,我的想法是,这要研究文件格式了,看看有没什么区域是可以加 meta 的,看看加 meta 后 hahs 值变了绕过和谐,这是最方便的改动了;
    byte10
        49
    byte10  
       2023-03-08 10:28:50 +08:00
    文件和谐,你那种方式入侵太强了,如果要针对各种文件去做调整那就比较麻烦。我是建议随便最一个简单的流加密就好了,哪怕固定的每个字节 和 10101100 做异或运算都行。有密码跟没有密码区别是很大的,哪怕这个密码是 123456 ,云盘厂商就不会去扫描,也不会花费时间精力去给你破解。
    byte10
        50
    byte10  
       2023-03-08 10:45:13 +08:00
    @ysc3839 我不会用 go ,我也喜欢 nodejs😄。但是要去整理这些云盘的对接还挺多的,我倒是挺想整合几个云盘,自己用也挺好的,你有兴趣不,搞搞它😂
    richzhu
        51
    richzhu  
       2023-03-20 21:06:55 +08:00
    有后续不,最后决定要做了没
    king888
        52
    king888  
    OP
       2023-03-20 21:15:17 +08:00
    @richzhu 在做了
    xiazhiyuan
        53
    xiazhiyuan  
       2023-05-29 16:34:52 +08:00
    @king888 有人今天做出来了,是你嘛?
    xiazhiyuan
        54
    xiazhiyuan  
       2023-05-29 16:46:15 +08:00
    king888
        55
    king888  
    OP
       2023-05-31 15:26:56 +08:00
    @xiazhiyuan 不是,现在项目也不叫 xlist 了。还没发布,主线已经跑通,前段时间有些事延期了,这几天再补回来,项目不会鸽,感谢关注
    xiazhiyuan
        56
    xiazhiyuan  
       2023-06-01 15:02:10 +08:00
    @king888 保持关注
    zjyg1993
        57
    zjyg1993  
       50 天前
    项目最终名字是啥呢?提一个需求,要支持设定相册文件夹,音乐文件夹,相册文件夹展示的模式就有类似于幻灯片那种切换,然后标记图片;音乐文件夹的话,能够展示音乐专辑封面、歌词,很有用,目前 alist 这块支持的不太好
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3949 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:13 · PVG 13:13 · LAX 21:13 · JFK 00:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.