feat: 增加接口: 获取客户端歌曲下载链接 - 新版、当前账号关注的用户/歌手

This commit is contained in:
overwriter 2024-07-13 16:32:11 +08:00
parent 8de3e9fa66
commit 83cc9a7566
4 changed files with 74 additions and 0 deletions

View File

@ -426,6 +426,9 @@ banner({ type: 0 }).then((res) => {
280. 获取专辑歌曲的音质
281. 歌手动态信息
282. 最近听歌列表
283. 云盘导入歌曲
284. 获取客户端歌曲下载链接 - 新版
285. 当前账号关注的用户/歌手
## 单元测试

View File

@ -0,0 +1,18 @@
// 获取客户端歌曲下载链接 - v1
// 此版本不再采用 br 作为音质区分的标准
// 而是采用 standard, exhigh, lossless, hires, jyeffect(高清环绕声), sky(沉浸环绕声), jymaster(超清母带) 进行音质判断
const createOption = require('../util/option.js')
module.exports = (query, request) => {
const data = {
id: query.id,
immerseType: 'c51',
level: query.level,
}
return request(
'POST',
`/api/song/enhance/download/url/v1`,
data,
createOption(query),
)
}

View File

@ -0,0 +1,24 @@
// 当前账号关注的用户/歌手
const createOption = require('../util/option.js')
module.exports = (query, request) => {
const size = query.size || 30
const cursor = query.cursor || 0
const scene = query.scene || 0 // 0: 所有关注 1: 关注的歌手 2: 关注的用户
const data = {
authority: 'false',
page: JSON.stringify({
size: size,
cursor: cursor,
}),
scene: scene,
size: size,
sortType: '0',
}
return request(
'POST',
`/api/user/follow/users/mixed/get/v2`,
data,
createOption(query),
)
}

View File

@ -299,6 +299,8 @@
281. 歌手动态信息
282. 最近听歌列表
283. 云盘导入歌曲
284. 获取客户端歌曲下载链接 - 新版
285. 当前账号关注的用户/歌手
## 安装
@ -4685,6 +4687,33 @@ bitrate = Math.floor(br / 1000)
```
导入后的文件名后缀均为 `.mp3` 。但用 `获取音乐url` 获取到的文件格式仍然是正确的。
### 获取客户端歌曲下载链接 - 新版
说明 : 使用 `/song/url/v1` 接口获取的是歌曲试听 url, 但存在部分歌曲在非 VIP 账号上可以下载无损音质而不能试听无损音质, 使用此接口可使非 VIP 账号获取这些歌曲的无损音频
**必选参数 :** `id` : 音乐 id
`level`: 播放音质等级, 分为 `standard` => `标准`,`higher` => `较高`, `exhigh`=>`极高`,
`lossless`=>`无损`, `hires`=>`Hi-Res`, `jyeffect` => `高清环绕声`, `sky` => `沉浸环绕声`,
`jymaster` => `超清母带`
**接口地址 :** `/song/download/url/v1`
**调用例子 :** `/song/download/url/v1?id=2058263032&level=lossless`
### 当前账号关注的用户/歌手
说明 : 调用此接口, 可获得当前账号关注的用户/歌手
**可选参数 :** `size` : 返回数量 , 默认为 30
`cursor` : 返回数据的 cursor, 默认为 0 , 传入上一次返回结果的 cursor,将会返回下一页的数据
`scene` : 场景, 0 表示所有关注, 1 表示关注的歌手, 2 表示关注的用户, 默认为 0
**接口地址 :** `/user/follow/mixed`
**调用例子 :** `/user/follow/mixed?scene=1`
## 离线访问此文档
此文档同时也是 Progressive Web Apps(PWA), 加入了 serviceWorker, 可离线访问