接入文档
WebDAV API
WebDAV API
Abyss 实现了完整的 WebDAV 协议(Class 1/2/3),开发者可基于标准 HTTP 方法将本服务接入自有软件,无需依赖专用 SDK。
接口地址与认证
- 所有 WebDAV 请求的根地址为
https://b.mvste.club/dav。 - 认证方式:HTTP Basic Auth,用户名/密码为「设置 → WebDAV 账户」中创建的值。
- 每个 WebDAV 账户拥有独立的根路径,账户之间文件完全隔离。
支持的 HTTP 方法
| 方法 | 用途 | 常用请求头 |
|---|---|---|
OPTIONS | 能力探测(返回支持的 DAV 级别与 Allow 列表) | — |
PROPFIND | 列目录 / 查询属性,Depth: 0|1|infinity | Depth |
MKCOL | 创建目录 | — |
GET / HEAD | 下载文件(目录返回 HTML 列表页) | — |
PUT | 上传 / 创建文件(请求体为文件内容) | Content-Type |
DELETE | 删除文件或目录(含子内容) | — |
COPY / MOVE | 复制 / 移动(跨目录、重命名) | Destination、Overwrite |
LOCK / UNLOCK | 文件锁定(排他锁,供并发编辑场景) | Timeout、Lock-Token |
PROPPATCH | 设置 / 删除自定义属性 | — |
常用请求示例
# 1. 列出目录(返回 XML multistatus) curl -u 用户名:密码 -X PROPFIND https://b.mvste.club/dav/ -H "Depth: 1" # 2. 上传文件 curl -u 用户名:密码 -T ./local.txt https://b.mvste.club/dav/remote.txt # 3. 下载文件 curl -u 用户名:密码 https://b.mvste.club/dav/remote.txt -o ./local.txt # 4. 创建目录 curl -u 用户名:密码 -X MKCOL https://b.mvste.club/dav/newfolder # 5. 重命名 / 移动(MOVE 到新地址) curl -u 用户名:密码 -X MOVE https://b.mvste.club/dav/old.txt -H "Destination: https://b.mvste.club/dav/new.txt" # 6. 复制 curl -u 用户名:密码 -X COPY https://b.mvste.club/dav/old.txt -H "Destination: https://b.mvste.club/dav/copy.txt" # 7. 删除 curl -u 用户名:密码 -X DELETE https://b.mvste.club/dav/old.txt
响应状态码
| 状态码 | 含义 |
|---|---|
| 200 OK | 操作成功(如 LOCK、OPTIONS) |
| 201 Created | 资源创建成功(PUT、MKCOL、COPY/MOVE) |
| 204 No Content | 删除 / 覆盖成功 |
| 207 Multi-Status | PROPFIND / PROPPATCH 的 XML 多状态响应 |
| 401 Unauthorized | 未认证或凭据错误 |
| 403 Forbidden | 无权限(如越权访问他人空间) |
| 404 Not Found | 资源不存在 |
| 409 Conflict | 操作冲突(如父目录不存在) |
| 423 Locked | 资源被他人锁定 |
| 507 Insufficient Storage | 超出存储配额 |