[feat] 新增新版 音乐链接获取 API

注意, 为防止兼容性问题, 仍然保留旧版 API
新版 API 不再使用 br 作为音质的区分而是通过 standard 等单词更加准确地获取指定音质
默认 level 暂未设置
This commit is contained in:
kengwang 2022-08-23 02:00:41 +08:00
parent d47714175f
commit 647396f38c
No known key found for this signature in database
GPG Key ID: 9ED4CB8A0CF42B18
2 changed files with 37 additions and 0 deletions

View File

@ -1414,6 +1414,17 @@ tags: 歌单标签
**调用例子 :** `/song/url?id=33894312` `/song/url?id=405998841,33894312`
### 获取音乐 url - 新版
说明 : 使用注意事项同上
**必选参数 :** `id` : 音乐 id
`level`: 播放音质等级, 分为 `standard` => `标准`, `exhigh`=>`极高`, `lossless`=>`无损`, `hires`=>`Hi-Res`
**接口地址 :** `/song/url/v1`
**调用例子 :** `/song/url/v1?id=33894312&level=exhigh` `/song/url/v1?id=405998841,33894312&level=lossless`
### 音乐是否可用
说明: 调用此接口,传入歌曲 id, 可获取音乐是否可用,返回 `{ success: true, message: 'ok' }` 或者 `{ success: false, message: '亲爱的,暂无版权' }`

26
module/song_url_v1.js Normal file
View File

@ -0,0 +1,26 @@
// 歌曲链接 - v1
// 此版本不再采用 br 作为音质区分的标准
// 而是采用 standard, exhigh, lossless, hires 进行音质判断
const crypto = require('crypto')
module.exports = (query, request) => {
query.cookie.os = 'pc'
const data = {
ids: '[' + query.id + ']',
level: query.level,
encodeType: 'flac'
}
console.log(query)
return request(
'POST',
`https://interface.music.163.com/eapi/song/enhance/player/url/v1`,
data,
{
crypto: 'eapi',
cookie: query.cookie,
proxy: query.proxy,
realIP: query.realIP,
url: '/api/song/enhance/player/url/v1',
},
)
}