diff --git a/CHANGELOG.MD b/CHANGELOG.MD index 9e7af87cd0c611329b1a9a60035d39ade5e998fa..daefab06b023578e1e45331657e90abc8add3302 100644 --- a/CHANGELOG.MD +++ b/CHANGELOG.MD @@ -1,4 +1,7 @@ # 更新日志 +### 4.0.15 | 2021.5.29 +- 新增已购单曲,获取mlog播放地址,将mlog id转为视频id,vip成长值,vip成长值获取记录,vip任务,领取vip成长值 等接口 [#1248](https://github.com/Binaryify/NeteaseCloudMusicApi/pull/1248) + ### 4.0.14 | 2021.5.28 - 增加云贝推歌接口,云贝推歌历史记录接口 [#1246](https://github.com/Binaryify/NeteaseCloudMusicApi/pull/1246) diff --git a/app.js b/app.js index fb56df2b35d5b11a07c60f0dec3548e4978f86a0..f7f50207cb913c7dde71d4059ee413eefa6f7ebc 100644 --- a/app.js +++ b/app.js @@ -42,8 +42,9 @@ app.use((req, res, next) => { ;(req.headers.cookie || '').split(/\s*;\s*/).forEach((pair) => { let crack = pair.indexOf('=') if (crack < 1 || crack == pair.length - 1) return - req.cookies[decodeURIComponent(pair.slice(0, crack)).trim()] = - decodeURIComponent(pair.slice(crack + 1)).trim() + req.cookies[ + decodeURIComponent(pair.slice(0, crack)).trim() + ] = decodeURIComponent(pair.slice(crack + 1)).trim() }) next() }) diff --git a/interface.d.ts b/interface.d.ts index 1306272128868135025e78973dcf196619ac81bc..74907c591a1773f16669cdc21a5077d25404ef68 100644 --- a/interface.d.ts +++ b/interface.d.ts @@ -1429,7 +1429,6 @@ export function cloud_match( } & RequestBaseConfig, ): Promise - export function yunbei_rcmd_song( params: { id: number | string @@ -1461,20 +1460,16 @@ export function mlog_to_video( } & RequestBaseConfig, ): Promise -export function vip_growthpoint( - params: RequestBaseConfig, -): Promise +export function vip_growthpoint(params: RequestBaseConfig): Promise export function vip_growthpoint_details( params: MultiPageConfig & RequestBaseConfig, ): Promise -export function vip_tasks( - params: RequestBaseConfig, -): Promise +export function vip_tasks(params: RequestBaseConfig): Promise export function vip_growthpoint_get( - params: { + params: { id?: number | string } & RequestBaseConfig, -): Promise \ No newline at end of file +): Promise diff --git a/module/mlog_to_video.js b/module/mlog_to_video.js index b1e791a7fdc5da0c6e1655fda395f53461ba2fd2..54b279e83dd8d793650b39bb1a6162a98fd430d4 100644 --- a/module/mlog_to_video.js +++ b/module/mlog_to_video.js @@ -1,19 +1,18 @@ // 将mlog id转为video id module.exports = (query, request) => { - const data = { - mlogId: query.id, - } - return request( - 'POST', - `https://music.163.com/weapi/mlog/video/convert/id`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + mlogId: query.id, } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/mlog/video/convert/id`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/mlog_url.js b/module/mlog_url.js index 015fcb8a7ffa689cf3afb2941e2a6b6d7341873c..f7223e0131c9e36d862f5dc6fa3f441ef718e53a 100644 --- a/module/mlog_url.js +++ b/module/mlog_url.js @@ -1,21 +1,15 @@ // mlog链接 module.exports = (query, request) => { - const data = { - id: query.id, - resolution: query.res || 1080, - type: 1, - } - return request( - 'POST', - `https://music.163.com/weapi/mlog/detail/v1`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + id: query.id, + resolution: query.res || 1080, + type: 1, } - \ No newline at end of file + return request('POST', `https://music.163.com/weapi/mlog/detail/v1`, data, { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }) +} diff --git a/module/related_playlist.js b/module/related_playlist.js index 02e580ff2ffe0ef0c25061cc32caa972c256be35..6f64b3d48e8f2cafe66304380e62ddbeb5198044 100644 --- a/module/related_playlist.js +++ b/module/related_playlist.js @@ -13,8 +13,7 @@ module.exports = (query, request) => { }, ).then((response) => { try { - const pattern = - /
[\s\S]*?[\s\S]*?]*>([^<]+?)<\/a>[\s\S]*?]*>([^<]+?)<\/a>/g + const pattern = /
[\s\S]*?[\s\S]*?]*>([^<]+?)<\/a>[\s\S]*?]*>([^<]+?)<\/a>/g let result, playlists = [] while ((result = pattern.exec(response.body)) != null) { diff --git a/module/song_purchased.js b/module/song_purchased.js index 757bf547001e7efa84b554c89cdf7ee66f238192..c86dfa1347f133ff81008869755df868853f9a60 100644 --- a/module/song_purchased.js +++ b/module/song_purchased.js @@ -1,20 +1,19 @@ // 已购单曲 module.exports = (query, request) => { - const data = { - limit: query.limit || 20, - offset: query.offset || 0, - } - return request( - 'POST', - `https://music.163.com/weapi/single/mybought/song/list`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + limit: query.limit || 20, + offset: query.offset || 0, } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/single/mybought/song/list`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/vip_growthpoint.js b/module/vip_growthpoint.js index e8f2eb9bd910c766c2dd1e8306deba9f369bf75d..e035c5aa97f6c3e4a307afc0e349e35a5b24b986 100644 --- a/module/vip_growthpoint.js +++ b/module/vip_growthpoint.js @@ -1,17 +1,16 @@ // 会员成长值 module.exports = (query, request) => { - const data = {} - return request( - 'POST', - `https://music.163.com/weapi/vipnewcenter/app/level/growhpoint/basic`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) - } - \ No newline at end of file + const data = {} + return request( + 'POST', + `https://music.163.com/weapi/vipnewcenter/app/level/growhpoint/basic`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/vip_growthpoint_details.js b/module/vip_growthpoint_details.js index eaa98748e16ed39e99a763ff5642da1057e92730..be9c9277c3449242a357238d0e44fafd09ccb7a3 100644 --- a/module/vip_growthpoint_details.js +++ b/module/vip_growthpoint_details.js @@ -1,20 +1,19 @@ // 会员成长值领取记录 module.exports = (query, request) => { - const data = { - limit: query.limit || 20, - offset: query.offset || 0, - } - return request( - 'POST', - `https://music.163.com/weapi/vipnewcenter/app/level/growth/details`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + limit: query.limit || 20, + offset: query.offset || 0, } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/vipnewcenter/app/level/growth/details`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/vip_growthpoint_get.js b/module/vip_growthpoint_get.js index 6a0563c92d129ce49fe494c116f81c705a8afb31..b903197bd455196c7027d954a1d30cdd814f859a 100644 --- a/module/vip_growthpoint_get.js +++ b/module/vip_growthpoint_get.js @@ -1,19 +1,18 @@ // 领取会员成长值 module.exports = (query, request) => { - const data = { - taskIds: query.id, - } - return request( - 'POST', - `https://music.163.com/weapi/vipnewcenter/app/level/task/reward/get`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + taskIds: query.id, } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/vipnewcenter/app/level/task/reward/get`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/vip_tasks.js b/module/vip_tasks.js index cd599e56ebaa65146b0e5550471c9e0dd0b6c984..256e67ace87627cfe2b2609770a31bd393db060b 100644 --- a/module/vip_tasks.js +++ b/module/vip_tasks.js @@ -1,17 +1,16 @@ // 会员任务 module.exports = (query, request) => { - const data = {} - return request( - 'POST', - `https://music.163.com/weapi/vipnewcenter/app/level/task/list`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) - } - \ No newline at end of file + const data = {} + return request( + 'POST', + `https://music.163.com/weapi/vipnewcenter/app/level/task/list`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/yunbei_rcmd_song.js b/module/yunbei_rcmd_song.js index 28d14e955105e85f63bf1b1d4f56a4dc62dc46be..94ddeaacc96703a12cedfcf22e3d7dcf0fd611b6 100644 --- a/module/yunbei_rcmd_song.js +++ b/module/yunbei_rcmd_song.js @@ -1,22 +1,21 @@ // 云贝推歌 module.exports = (query, request) => { - const data = { - songId: query.id, - reason: query.reason || '好歌献给你', - scene: '', - fromUserId: -1, - } - return request( - 'POST', - `https://music.163.com/weapi/yunbei/rcmd/song/submit`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + songId: query.id, + reason: query.reason || '好歌献给你', + scene: '', + fromUserId: -1, } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/yunbei/rcmd/song/submit`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/module/yunbei_rcmd_song_history.js b/module/yunbei_rcmd_song_history.js index f0aacc46431e4c4ef8c9d3ea6b2e455398f28987..224a4f842b12157c7fb0e99e08d6218dd5d9e1f1 100644 --- a/module/yunbei_rcmd_song_history.js +++ b/module/yunbei_rcmd_song_history.js @@ -1,22 +1,21 @@ // 云贝推歌历史记录 module.exports = (query, request) => { - const data = { - page: JSON.stringify({ - size: query.size || 20, - cursor: query.cursor || '', - }) - } - return request( - 'POST', - `https://music.163.com/weapi/yunbei/rcmd/song/history/list`, - data, - { - crypto: 'weapi', - cookie: query.cookie, - proxy: query.proxy, - realIP: query.realIP, - }, - ) + const data = { + page: JSON.stringify({ + size: query.size || 20, + cursor: query.cursor || '', + }), } - \ No newline at end of file + return request( + 'POST', + `https://music.163.com/weapi/yunbei/rcmd/song/history/list`, + data, + { + crypto: 'weapi', + cookie: query.cookie, + proxy: query.proxy, + realIP: query.realIP, + }, + ) +} diff --git a/package.json b/package.json index 6f61ec4ec55328108f66e7946a4c152e349603c7..349e00eba7d03bda00b1a511a72bfbc63b22ce6d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "NeteaseCloudMusicApi", - "version": "4.0.14", + "version": "4.0.15", "description": "网易云音乐 NodeJS 版 API", "scripts": { "start": "node app.js",