webdav-aliyundriver/README.md

3.4 KiB
Raw Blame History

说明:1.1.0版本支持阿里Teambition网盘的webdav协议后续的2.x版本仅支持阿里云盘不再维护Teambition网盘版本

webdav-aliyundriver

本项目实现了阿里云盘的webdav协议只需要简单的配置一下就可以让阿里云盘变身为webdav协议的文件服务器。 基于此你可以把阿里云盘挂载为Windows、Linux、Mac系统的磁盘可以通过NAS系统做文件管理或文件同步更多玩法等你挖掘

如何使用

支持refreshToken登录方式具体看参数说明

Jar包运行

点击下载Jar包

建议自己下载源码编译,以获得最新代码

java -jar webdav.jar --aliyundrive.refresh-token="your refreshToken"

容器运行

docker run -d --name=webdav-aliyundriver --restart=always -p 8080:8080  -v /etc/localtime:/etc/localtime -v /etc/aliyun-driver/:/etc/aliyun-driver/ -e TZ="Asia/Shanghai" -e ALIYUNDRIVE_REFRESH_TOKEN="your refreshToken" -e ALIYUNDRIVE_AUTH_PASSWORD="admin" zx5253/webdav-aliyundriver

# /etc/aliyun-driver/ 挂载卷自动维护了最新的refreshToken建议挂载
# ALIYUNDRIVE_AUTH_PASSWORD 是admin账户的密码建议修改

参数说明

--aliyundrive.refresh-token
    阿里云盘的refreshToken获取方式见下文
--server.port
    非必填服务器端口号默认为8080
--aliyundrive.auth.enable=true
    是否开启WebDav账户验证默认开启
--aliyundrive.auth.user-name=admin
    WebDav账户默认admin
--aliyundrive.auth.password=admin
    WebDav密码默认admin

QQ群

群号789738128

浏览器获取refreshToken方式

  1. 先通过浏览器建议chrome打开阿里云盘官网并登录https://www.aliyundrive.com/drive/
  2. 登录成功后按F12打开开发者工具点击Application点击Local Storage点击 Local Storage下的 https://www.aliyundrive.com/点击右边的token此时可以看到里面的数据其中就有refresh_token把其值复制出来即可。格式为小写字母和数字不要复制双引号。例子ca6bf2175d73as2188efg81f87e55f11
  3. 第二步有点繁琐,大家结合下面的截图就看懂了 image

功能说明

支持的功能

  1. 查看文件夹、查看文件
  2. 文件移动目录
  3. 文件重命名
  4. 文件下载
  5. 文件删除
  6. 文件上传(支持大文件自动分批上传)
  7. 支持WebDav权限校验默认账户密码admin/admin

暂不支持的功能

  1. 移动文件到其他目录的同时,修改文件名。比如 /a.zip 移动到 /b/a1.zip是不支持的
  2. 文件上传断点续传
  3. 文件下载断点续传
  4. 同级目录下文件数量不能超过10000个建议不超过100否则性能比较差

已知问题

  1. 没有做文件sha1校验不保证上传文件的100%准确性(一般场景下,是没问题的)
  2. 通过文件名和文件大小判断是否重复。也就是说如果一个文件即使发生了更新,但其大小没有任何改变,是不会自动上传的
  3. 超大文件上传存在问题具体上限还不清楚我自己实测5G+大小的文件无法顺利上传

TODO

  1. 支持更多登录方式(验证码、账号密码等)