歌单
GET /cm/playlists
歌单 · /playlists
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request GET 'https://music.20110208.xyz/cm/playlists' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
playlists | cm_db.playlists_of(u['id']) |
实现定位:backend/cm_server.py:3190。接口参数和返回条件均来自该路由分支。
POST /cm/playlists
歌单 · /playlists
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| JSON body | description | ''(空值时回退) |
| JSON body | name | ''(空值时回退) |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 400 | '歌单名不能为空' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request POST 'https://music.20110208.xyz/cm/playlists' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"description": "<description>", "name": "<name>"}'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
响应体 | cm_db.get_playlist(pid) |
实现定位:backend/cm_server.py:3194。接口参数和返回条件均来自该路由分支。
DELETE /cm/playlists/{id}
歌单 · /playlists/{id}
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| path | id | 路径占位符;按业务替换 |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 403 | '只能操作自己的歌单' |
| 404 | '歌单不存在' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request DELETE 'https://music.20110208.xyz/cm/playlists/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
ok | True |
实现定位:backend/cm_server.py:3217。接口参数和返回条件均来自该路由分支。
GET /cm/playlists/{id}
歌单 · /playlists/{id}
权限:路由未直接调用登录检查;委托处理器可能另行校验,见说明。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| path | id | 路径占位符;按业务替换 |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 404 | '歌单不存在' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request GET 'https://music.20110208.xyz/cm/playlists/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
tracks | cm_db.song_rows_to_meta(cm_db.songs_by_ids(ids)) |
实现定位:backend/cm_server.py:3208。接口参数和返回条件均来自该路由分支。
PUT /cm/playlists/{id}
歌单 · /playlists/{id}
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| path | id | 路径占位符;按业务替换 |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 403 | '只能操作自己的歌单' |
| 404 | '歌单不存在' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request PUT 'https://music.20110208.xyz/cm/playlists/{id}' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
响应体 | cm_db.get_playlist(pid) |
实现定位:backend/cm_server.py:3214。接口参数和返回条件均来自该路由分支。
DELETE /cm/playlists/{id}/tracks
歌单 · /playlists/{id}/tracks
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| path | id | 路径占位符;按业务替换 |
| JSON body | songs | [](空值时回退) |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 400 | '缺少歌曲' |
| 403 | '只能操作自己的歌单' |
| 404 | '歌单不存在' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request DELETE 'https://music.20110208.xyz/cm/playlists/{id}/tracks' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"songs": "<songs>"}'
返回类型
此分支使用专用处理器、文件或事件流响应,或在共享分支中组装 JSON。具体结构见对应专题;文件流不能按 JSON 解析。
实现定位:backend/cm_server.py:3240。接口参数和返回条件均来自该路由分支。
POST /cm/playlists/{id}/tracks
歌单 · /playlists/{id}/tracks
权限:CurrentMusic Bearer 登录态;房间/绑定等条件另见校验。
请求参数
| 位置 | 字段 | 默认/读取方式 |
|---|---|---|
| path | id | 路径占位符;按业务替换 |
| JSON body | songs | [](空值时回退) |
表格列出实际代码读取的字段;get 的默认值不等于业务可省略。必填、长度和取值约束见下方校验及关联专题。
参数校验与业务错误
| HTTP | 服务端校验说明 |
|---|---|
| 400 | '缺少歌曲' |
| 403 | '只能操作自己的歌单' |
| 404 | '歌单不存在' |
说明中的变量表达式表示运行时值;另有统一的认证、频控和上游错误。
请求模板
将 {id} 等占位符和字段值替换为实际数据,令牌只使用你自己的 CurrentMusic 会话。
curl --request POST 'https://music.20110208.xyz/cm/playlists/{id}/tracks' \
--header 'Authorization: Bearer YOUR_CURRENTMUSIC_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"songs": "<songs>"}'
返回结构
以下是实现中直接返回的字段与取值表达式,不是一次真实请求的响应示例。条件分支可能返回不同结构。
HTTP 200
| 字段 | 取值/生成逻辑 |
|---|---|
ok | True |
count | len(cm_db.playlist_track_ids(pid)) |
实现定位:backend/cm_server.py:3238。接口参数和返回条件均来自该路由分支。