Skip to content

Commit

Permalink
增加 annil 中的元数据来源
Browse files Browse the repository at this point in the history
  • Loading branch information
Yesterday17 committed Jan 28, 2023
1 parent 11cbc39 commit af32853
Showing 1 changed file with 22 additions and 4 deletions.
26 changes: 22 additions & 4 deletions src/05.audio-library/01.protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
> ⚠️️ 在协议版本迈入 `1.0` 之前,任何改动都有可能发生。
最后修改:2022 年 05 月 10 日
协议版本:0.4.1
协议版本:0.5.0

## 定义

Expand Down Expand Up @@ -91,6 +91,8 @@ Access-Control-Allow-Origin: *

## 音频仓库信息

> ⚠️️ 该接口后续可能会被移除
获取音频仓库信息的 `API` 定义为 `GET /info`,所有用户都可以请求。

返回结果如下例:
Expand All @@ -102,10 +104,19 @@ Access-Control-Allow-Origin: *
"version": "Annil v0.1.0",
// 当前运行的 Annil 音频仓库协议版本
// 用于客户端比对其支持的能力
"protocol_version": "0.2.1",
"protocol_version": "0.5.0",
// 音频仓库最近一次数据更新时间
// 用于客户端缓存 `/albums` 请求结果
"last_update": 1639631487
"last_update": 1639631487,
// 音频仓库中音频资源的元数据源
"metadata": {
// 该仓库的链接
"repo": "https://github.com/ProjectAnni/repo",
// [可选][二选一] 该仓库对应的 Annim 服务器地址
"server": "https://annim.server",
// [可选][二选一] 该仓库对应的构建数据源下载路径
"db": "https://db-server/db"
}
}
```

Expand All @@ -129,7 +140,14 @@ Access-Control-Allow-Origin: *
]
```

`Anni` 音频仓库协议**建议**音频仓库在响应中携带 `ETag` 头部,以便客户端缓存。
该返回会携带以下附加头部:

| Key | 含义 |
| ------------------- | ---------------------------------------- |
| `X-Metadata-Repo` |`metadata.repo` 相同 |
| `X-Metadata-Server` |`metadata.server` 相同 |
| `X-Metadata-DB` |`metadata.db` 相同 |
| `ETag` | Annil 实际包含的资源指纹,用于客户端缓存 |

### 客户端实现指导

Expand Down

0 comments on commit af32853

Please sign in to comment.