说明
1.1.0版本支持阿里Teambition网盘的webdav协议
2.x版本仅支持阿里云盘, 不再维护Teambition网盘版本
3.x版本支持阿里云盘OpenApi
目录
本项目实现了阿里云盘的webdav协议, 只需要简单的配置一下, 就可以让阿里云盘变身为webdav协议的文件服务器。 基于此, 你可以把阿里云盘挂载为Windows、Linux、Mac系统的磁盘, 可以通过NAS系统做文件管理或文件同步, 更多玩法等你挖掘
- Windows
aliyundrive-webdav-windows-amd64.exe
- Linux(X64)
./aliyundrive-webdav-linux-amd64
- Linux(ARM64)
./aliyundrive-webdav-linux-arm64
- macOS(Intel)
./aliyundrive-webdav-darwin-x86_64
- WebApi
./aliyundrive-webdav-darwin-x86_64 --aliyundrive.driver=WebApi
建议自己下载源码编译, 以获得最新代码
java -jar webdav.jar
mkdir $(pwd)/conf
docker run -d \
--name=aliyundrive-webdav \
--restart=always -p 8080:8080 \
-v /etc/localtime:/etc/localtime \
-v $(pwd)/conf:/conf \
-e TZ="Asia/Shanghai" \
-e ALIYUNDRIVE_DRIVER=OpenApi \
-e ALIYUNDRIVE_REFRESH_TOKEN="your refreshToken" \
-e ALIYUNDRIVE_AUTH_PASSWORD="admin" \
eritpchy/aliyundrive-webdav
# /conf 挂载卷自动维护了最新的refreshToken, 建议挂载
# ALIYUNDRIVE_AUTH_PASSWORD 是admin账户的密码, 建议修改
version: "3.0"
services:
aliyundrive-webdav:
image: eritpchy/aliyundrive-webdav
container_name: aliyundriver
environment:
- TZ=Asia/Shanghai
- ALIYUNDRIVE_DRIVER=OpenApi
- ALIYUNDRIVE_REFRESH_TOKEN=refreshToken
- ALIYUNDRIVE_AUTH_USER_NAME=admin
- ALIYUNDRIVE_AUTH_PASSWORD=admin
volumes:
- ./docker/conf:/conf
ports:
- 6666:8080
restart: always
# “refreshToken”请根据下文说明自行获取。
# “ALIYUNDRIVE_AUTH_USER-NAME”和“ALIYUNDRIVE_AUTH_PASSWORD”为连接用户名和密码, 建议更改。
# “./docker/conf/:/conf”, 可以把冒号前改为指定目录, 比如“/homes/USER/docker/alidriver/:/conf”。
# 删除了“/etc/localtime:/etc/localtime”, 如有需要同步时间请自行添加在environment下。
# 端口6666可自行按需更改, 此端口为WebDAV连接端口,8080为容器内配置端口, 修改请量力而为。
# 建议不要保留这些中文注释, 以防报错, 比如QNAP。
参考根目录内中的k8s_app.yaml, 需要文件中修改container的环境变量值。
use this to deploy in truenas scale
sudo k3s kubectl apply -f k8s_app.yaml
or other k8s cluster
sudo kubectl apply -f k8s_app.yaml
--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
--aliyundrive.work-dir=./conf
token挂载路径 (如果多开的话, 需修改此配置)
--aliyundrive.driver=OpenApi
驱动引擎, 默认官方OpenApi, 可选WebApi
//依赖
compileOnly "org.projectlombok:lombok:1.18.26"
annotationProcessor "org.projectlombok:lombok"
implementation "com.squareup.okhttp3:okhttp:3.12.13" //api19
implementation "com.squareup.okhttp3:logging-interceptor:3.12.13" //api19
implementation "com.google.code.gson:gson:2.8.9"
//主要
implementation "net.xdow:aliyundrive-sdk-openapi:1.0.4"
implementation "net.xdow:aliyundrive-sdk-webapi:1.0.4"
//可选
implementation "net.xdow:webdav:1.0.4"
implementation "net.xdow:webdav-jakarta:1.0.4"
implementation "net.xdow:webdav-javax:1.0.4"
implementation "net.xdow:aliyundrive-webdav-internal:1.0.4"
implementation "net.xdow:aliyundrive-android-core:1.0.4"
implementation "net.xdow:jap-http:1.0.4"
implementation "net.xdow:jap-http-jakarta-adapter:1.0.4"
implementation "net.xdow:jap-http-javax-adapter:1.0.4"
AliyunDrive.newAliyunDrive()
群号(已满):789738128
二群群号(已满):979024890
三群群号(已满):212673498
四群群号(已满):752067171
五群群号:703607910
客户端 | 下载 | 上传 | 备注 |
---|---|---|---|
群辉Cloud Sync | 可用 | 可用 | 使用单向同步非常稳定 |
Rclone | 可用 | 可用 | 推荐, 支持各个系统 |
Mac原生 | 可用 | 可用 | |
Windows原生 | 可用 | 有点小问题 | 不建议, 适配有点问题, 上传报错 |
RaiDrive | 可用 | 可用 | Windows平台下建议用这个 |
- 先通过浏览器(建议chrome)打开阿里云盘官网并登录:https://www.aliyundrive.com/drive/
- 登录成功后, 按F12打开开发者工具, 点击Application, 点击Local Storage, 点击 Local Storage下的 https://www.aliyundrive.com/, 点击右边的token, 此时可以看到里面的数据, 其中就有refresh_token, 把其值复制出来即可。(格式为小写字母和数字, 不要复制双引号。例子:ca6bf2175d73as2188efg81f87e55f11)
- 第二步有点繁琐, 大家结合下面的截图就看懂了
- 先通过浏览器(建议chrome)打开阿里云盘官网并登录:https://www.aliyundrive.com/drive/
- 登录成功后, 在地址栏输入 javascript:
- 粘贴下列代码到javascript: 后面,然后按回车键
弹窗
var p=document.createElement('p');p.style='text-align:center;margin-top:30px';p.innerHTML='refresh_token: <span style="color:red;">'+JSON.parse(localStorage.getItem('token')).refresh_token+'</span>';var win=window.open('','_blank','width=800,height=100');win.document.body.appendChild(p);
同时, 也可以将上述代码组合为
javascript:var p=document.createElement('p');p.style='text-align:center;margin-top:30px';p.innerHTML='refresh_token: <span style="color:red;">'+JSON.parse(localStorage.getItem('token')).refresh_token+'</span>';var win=window.open('','_blank','width=800,height=100');win.document.body.appendChild(p);
添加为浏览器书签, 在https://www.aliyundrive.com/drive/ 页面点击该书签也会弹出refresh_token弹窗
- 查看文件夹、查看文件
- 文件移动目录
- 文件重命名
- 文件下载
- 文件删除
- 文件上传(支持大文件自动分批上传)
- 支持超大文件上传(官方限制30G)
- 支持WebDav权限校验(默认账户密码:admin/admin)
- 文件下载断点续传
- Webdav下的流媒体播放等功能
- 支持文件名包含
/
字符
- 移动文件到其他目录的同时, 修改文件名。比如 /a.zip 移动到 /b/a1.zip, 是不支持的
- 文件上传断点续传
- 部分客户端兼容性不好
- 没有做文件sha1校验, 不保证上传文件的100%准确性(一般场景下, 是没问题的)
- 通过文件名和文件大小判断是否重复。也就是说如果一个文件即使发生了更新, 但其大小没有任何改变, 是不会自动上传的
- 本软件为免费开源项目, 无任何形式的盈利行为。
- 本软件服务于阿里云盘, 旨在让阿里云盘功能更强大。如有侵权, 请与我联系, 会及时处理。
- 本软件皆调用官方接口实现, 无任何“Hack”行为, 无破坏官方接口行为。
- 本软件仅做流量转发, 不拦截、存储、篡改任何用户数据。
- 严禁使用本软件进行盈利、损坏官方、散落任何违法信息等行为。
- 本软件不作任何稳定性的承诺, 如因使用本软件导致的文件丢失、文件破坏等意外情况, 均与本软件无关。