diff --git a/module/like_v1.js b/module/like_v1.js new file mode 100644 index 0000000..01af308 --- /dev/null +++ b/module/like_v1.js @@ -0,0 +1,13 @@ +// 红心与取消红心歌曲- v1 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + query.like = query.like == 'false' ? false : true + const data = { + alg: 'itembased', + trackId: query.id, + like: query.like, + time: '3', + } + return request(`/api/v1/radio/like`, data, createOption(query, 'xeapi', 'v3')) +} diff --git a/module/song_simi_get.js b/module/song_simi_get.js new file mode 100644 index 0000000..ce1f8ff --- /dev/null +++ b/module/song_simi_get.js @@ -0,0 +1,15 @@ +// 插播相似歌曲 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const data = { + positionCode: 'toolBarRcmdSong', + resourceId: query.id, + resourceType: 'song', + } + return request( + `/api/link/position/show/resource`, + data, + createOption(query, 'eapi'), + ) +} diff --git a/module/song_wiki_info.js b/module/song_wiki_info.js new file mode 100644 index 0000000..9156471 --- /dev/null +++ b/module/song_wiki_info.js @@ -0,0 +1,22 @@ +// 歌曲百科 + +const createOption = require('../util/option.js') +module.exports = (query, request) => { + const extJson = { + states: { + playingResource: { + current: query.id, + scene: 'songWiki', + }, + }, + } + const data = { + extJson: JSON.stringify(extJson), + positionCode: 'songWikiMainPosition', + } + return request( + `/api/link/page/parent/relation/construct/info`, + data, + createOption(query, 'eapi'), + ) +} diff --git a/package.json b/package.json index c243ff2..24c9f35 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@neteasecloudmusicapienhanced/api", - "version": "4.40.0", + "version": "4.40.1", "description": "全网最全的网易云音乐API接口 || A revival project for NeteaseCloudMusicApi Node.js Services (Half Refactor & Enhanced) || 网易云音乐 API 备份 + 增强 || 本项目自原版v4.28.0版本后开始自行维护", "scripts": { "dev": "nodemon app.js", @@ -75,7 +75,7 @@ "data" ], "dependencies": { - "@neteasecloudmusicapienhanced/unblockmusic-utils": "^0.4.1", + "@neteasecloudmusicapienhanced/unblockmusic-utils": "^0.4.2", "axios": "^1.19.0", "crypto-js": "^4.2.0", "dotenv": "^17.4.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 97355c1..4ede601 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: '@neteasecloudmusicapienhanced/unblockmusic-utils': - specifier: ^0.4.1 - version: 0.4.1(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0) + specifier: ^0.4.2 + version: 0.4.2(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0) axios: specifier: ^1.19.0 version: 1.19.0(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0) @@ -260,8 +260,8 @@ packages: '@jridgewell/trace-mapping@0.3.31': resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} - '@neteasecloudmusicapienhanced/unblockmusic-utils@0.4.1': - resolution: {integrity: sha512-ZWwZEJ3YHNBe4qhcNdhoRFIPZ/vD+ZdNITq92P6klcQs2EScsBG/ah6SLU29X2fwu6jr/ZfX5n3ni7Gc51Fcuw==} + '@neteasecloudmusicapienhanced/unblockmusic-utils@0.4.2': + resolution: {integrity: sha512-voVIb3Yn2gy093L8FEFo3B//iYKEUd5NB8ItzQrZUCDYs1YWIrf1y+WPlQg8LL78TojkLH8aBKuGn9wUWntnCQ==} hasBin: true '@nodelib/fs.scandir@2.1.5': @@ -2962,7 +2962,7 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.5 - '@neteasecloudmusicapienhanced/unblockmusic-utils@0.4.1(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0)': + '@neteasecloudmusicapienhanced/unblockmusic-utils@0.4.2(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0)': dependencies: '@unblockneteasemusic/server': 0.28.0 axios: 1.19.0(debug@4.4.3(supports-color@5.5.0))(supports-color@5.5.0) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..fec3b14 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,2 @@ +minimumReleaseAgeExclude: + - '@neteasecloudmusicapienhanced/unblockmusic-utils@0.4.2' diff --git a/public/docs/home.md b/public/docs/home.md index f3cb34c..4a81401 100644 --- a/public/docs/home.md +++ b/public/docs/home.md @@ -2473,6 +2473,18 @@ privilege:权限相关信息 喜欢成功则返回数据的 code 为 200, 其余为失败 +### 喜欢音乐 - 新版 + +说明: 调用此接口 , 传入音乐 id, 可喜欢该音乐 + +**必选参数 :** `id`: 歌曲 id + +**可选参数 :** `like`: 布尔值 , 默认为 true 即喜欢 , 若传 false, 则取消喜欢 + +**接口地址 :** `/like/v1` + +**调用例子 :** `/like/v1?id=347230` + ### 喜欢音乐列表 说明 : 调用此接口 , 传入用户 id, 可获取已喜欢音乐 id 列表(id 数组) @@ -4138,6 +4150,16 @@ type='1009' 获取其 id, 如`/search?keywords= 代码时间 &type=1009` **调用例子:** `/song/wiki/summary?id=1958384591` +### 音乐百科 + +说明: 调用此接口可以获取歌曲的音乐百科信息 + +**接口地址:** `/song/wiki/info` + +**必选参数:** `id`: 歌曲 ID + +**调用例子:** `/song/wiki/info?id=1958384591` + ### 乐谱列表 说明: 调用此接口可以获取歌曲的乐谱列表 @@ -5834,6 +5856,16 @@ let data = encodeURIComponent( **调用例子 :** `/device/kickoff?key=00ALDFGEXXXXXXXXXXXXXXXXX&captcha=1234` +### 插播相似歌曲 + +说明: 调用此接口, 传入歌曲 id, 可获取插播相似歌曲 + +**必选参数 :** `id`: 歌曲 id + +**接口地址 :** `/song/simi/get` + +**调用例子 :** `/song/simi/get?id=39227633` + ## 离线访问此文档 此文档同时也是 Progressive Web Apps(PWA), 加入了 serviceWorker, 可离线访问