diff --git a/module/album.js b/module/album.js index 638effd869ce384600ffe5a358e5ba1e1dab0f09..d8d0ecd9cf135c99da7f6859295d533bdb95a9ef 100644 --- a/module/album.js +++ b/module/album.js @@ -1,22 +1,4 @@ -// 获取专辑内容 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// const id = req.query.id; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/album/${id}`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 专辑内容 module.exports = (query, request) => { return request( diff --git a/module/artist_album.js b/module/artist_album.js index e2bdfffe729156b32355278f1c0d3f6a14ed0208..8964c2a99f775e7a8588a6f3e9332941c7ebeb85 100644 --- a/module/artist_album.js +++ b/module/artist_album.js @@ -1,32 +1,13 @@ -// 获取歌手专辑列表 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const id = req.query.id; -// const data = { -// offset: req.query.offset || 0, -// total: true, -// limit: req.query.limit || 30, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/artist/albums/${id}`, -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌手专辑列表 module.exports = (query, request) => { const data = { - offset: query.offset || 0, limit: query.limit || 30, + offset: query.offset || 0, total: true } return request( 'POST', `http://music.163.com/weapi/artist/albums/${query.id}`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} +} \ No newline at end of file diff --git a/module/artist_desc.js b/module/artist_desc.js index 22f805a50b57a345b9d89da76bbe0bef9ff599ce..37677a31aa0e9d5e7687fe579ed11988526f1db8 100644 --- a/module/artist_desc.js +++ b/module/artist_desc.js @@ -1,20 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const id = req.query.id; -// const data = { -// id, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/artist/introduction`, -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌手介绍 module.exports = (query, request) => { const data = { @@ -24,4 +8,4 @@ module.exports = (query, request) => { 'POST', `http://music.163.com/weapi/artist/introduction`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} +} \ No newline at end of file diff --git a/module/artist_list.js b/module/artist_list.js index c9334679100841fbb2ab967a638ac35bcd57b764..7fbce657945a2044753a8a67fbc63bac6044c20c 100644 --- a/module/artist_list.js +++ b/module/artist_list.js @@ -1,55 +1,34 @@ // 歌手分类 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// // categoryCode 取值 +/* + categoryCode 取值 + 入驻歌手 5001 + 华语男歌手 1001 + 华语女歌手 1002 + 华语组合/乐队 1003 + 欧美男歌手 2001 + 欧美女歌手 2002 + 欧美组合/乐队 2003 + 日本男歌手 6001 + 日本女歌手 6002 + 日本组合/乐队 6003 + 韩国男歌手 7001 + 韩国女歌手 7002 + 韩国组合/乐队 7003 + 其他男歌手 4001 + 其他女歌手 4002 + 其他组合/乐队 4003 -// // 入驻歌手 5001 -// // 华语男歌手 1001 -// // 华语女歌手 1002 -// // 华语组合/乐队 1003 -// // 欧美男歌手 2001 -// // 欧美女歌手 2002 -// // 欧美组合/乐队 2003 -// // 日本男歌手 6001 -// // 日本女歌手 6002 -// // 日本组合/乐队 6003 -// // 韩国男歌手 7001 -// // 韩国女歌手 7002 -// // 韩国组合/乐队 7003 -// // 其他男歌手 4001 -// // 其他女歌手 4002 -// // 其他组合/乐队 4003 - -// // initial 取值a-z/A-Z - -// const data = { -// categoryCode: req.query.cat || "1001", -// offset: req.query.offset || 0, -// total: req.query.total ? "true" : "false", -// limit: req.query.limit || 30, -// initial: (req.query.initial || "").toUpperCase().charCodeAt() || "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/artist/list", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; + initial 取值 a-z/A-Z +*/ module.exports = (query, request) => { const data = { - categoryCode: query.cat || "1001", + categoryCode: query.cat || '1001', + initial: (query.initial || '').toUpperCase().charCodeAt() || '', offset: query.offset || 0, - total: query.total ? "true" : "false", limit: query.limit || 30, - initial: (query.initial || "").toUpperCase().charCodeAt() || "" + total: true } return request( 'POST', `http://music.163.com/weapi/artist/list`, data, diff --git a/module/artist_mv.js b/module/artist_mv.js index e72e134137b4196701dac527213d7acc02a4a754..8eb953c965d854859adeafb9bce0b51d328c2ae1 100644 --- a/module/artist_mv.js +++ b/module/artist_mv.js @@ -1,33 +1,14 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const id = req.query.id; -// const data = { -// artistId: id, -// total: true, -// offset: req.query.offset, -// limit: req.query.limit, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/artist/mvs`, -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌手相关MV module.exports = (query, request) => { const data = { artistId: query.id, - total: true, + limit: query.limit, offset: query.offset, - limit: query.limit + total: true } return request( 'POST', `http://music.163.com/weapi/artist/mvs`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} +} \ No newline at end of file diff --git a/module/artist_sub.js b/module/artist_sub.js index 2c37b0a97013336e9bd7a88e672f3bd2bf3456e0..05bc4cf12ccdc28e07e476658c135188157d697b 100644 --- a/module/artist_sub.js +++ b/module/artist_sub.js @@ -1,29 +1,13 @@ -// 收藏歌手 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// artistId: `${req.query.id}` -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/artist/sub", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 收藏与取消收藏歌手 module.exports = (query, request) => { + query.t = (query.t == 1 ? 'sub' : 'unsub') const data = { - artistId: query.id + artistId: query.id, + artistIds: '[' + query.id + ']' } return request( - 'POST', `http://music.163.com/weapi/artist/sub`, data, + 'POST', `http://music.163.com/weapi/artist/${query.t}`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} - +} \ No newline at end of file diff --git a/module/artist_sublist.js b/module/artist_sublist.js index a26efa1acc738e2bf3df28fd6a727f59f2bd35b3..d4d8096d0d332e65bd2d857cbd336e38b866c07b 100644 --- a/module/artist_sublist.js +++ b/module/artist_sublist.js @@ -1,30 +1,10 @@ -// 已关注歌手 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; - -// const data = { -// offset: req.query.offset || 0, -// total: req.query.total ? "true" : "false", -// limit: req.query.limit || 25 -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/artist/sublist", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 我的歌手列表 module.exports = (query, request) => { const data = { + limit: query.limit || 25, offset: query.offset || 0, - total: query.total ? "true" : "false", - limit: query.limit || 25 + total: true } return request( 'POST', `http://music.163.com/weapi/artist/sublist`, data, diff --git a/module/artist_unsub.js b/module/artist_unsub.js deleted file mode 100644 index dfd6dbad097ff998b4e2ee23e9c70d6e4c97cad4..0000000000000000000000000000000000000000 --- a/module/artist_unsub.js +++ /dev/null @@ -1,30 +0,0 @@ -// 取消收藏歌手 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// artistId: `${req.query.id}`, -// artistIds: `[${req.query.id}]` -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/artist/unsub", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; - -module.exports = (query, request) => { - const data = { - artistId: `${query.id}`, - artistIds: `[${query.id}]` - } - return request( - 'POST', `http://music.163.com/weapi/artist/unsub`, data, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} - ) -} diff --git a/module/artists.js b/module/artists.js index 1a1d837b3f89abf6d82bcf0154b8084b9760b987..a9efd17d800ce51f09f94022130e109bf7981d12 100644 --- a/module/artists.js +++ b/module/artists.js @@ -1,28 +1,8 @@ -// 获取歌手单曲 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const id = req.query.id; - -// const data = { -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/artist/${id}`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌手单曲 module.exports = (query, request) => { return request( 'POST', `http://music.163.com/weapi/v1/artist/${query.id}`, {}, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} +} \ No newline at end of file diff --git a/module/banner.js b/module/banner.js index 66b585e1efb2efb67d2c29028eea03b54261f788..869bd2a374a1642fa21a2a5c6d1642a455126a12 100644 --- a/module/banner.js +++ b/module/banner.js @@ -1,25 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const options = { -// url: "http://music.163.com/discover", -// method: "GET", -// headers: { -// "Referer": "http://music.163.com", -// "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3380.0 Safari/537.36" -// } -// }; -// request(options, (error, response, body) => { -// if (error) { -// res.status(502).send("fetch error"); -// } else { -// try { -// const banners = /Gbanners\s*=\s*([^;]+);/.exec(body)[1]; -// res.send(JSON.stringify(eval(`({code:200,banners:${banners}})`))); -// } catch (error) { -// res.status(502).send("fetch error"); -// } -// } -// }); -// }; +// 首页轮播图 module.exports = (query, request) => { return request( @@ -33,7 +12,7 @@ module.exports = (query, request) => { return response } catch(err){ - response.code = 500 + response.status = 500 response.body = {code: 500, msg: err.stack} return Promise.reject(response) } diff --git a/module/check_music.js b/module/check_music.js index fc53e47f9301fc54459f94597c3dbae384c9e416..8d11dffda2811c4de37c709903d9dc44938dfcbe 100644 --- a/module/check_music.js +++ b/module/check_music.js @@ -1,33 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const id = parseInt(req.query.id) -// const br = parseInt(req.query.br || 999000) -// const data = { -// ids: [id], -// br: br, -// csrf_token: '' -// } -// const cookie = req.get('Cookie') ? req.get('Cookie') : '' - -// createWebAPIRequest( -// 'music.163.com', -// '/weapi/song/enhance/player/url', -// 'POST', -// data, -// cookie, -// music_req => { -// music_req = JSON.parse(music_req) -// if (music_req.code == 200) { -// if (music_req.data[0].code == 200){ -// return res.send({ success: true, message: 'ok' }) -// } -// } -// return res.send({ success: false, message: '亲爱的,暂无版权' }) -// }, -// err => { -// res.status(502).send('fetch error') -// } -// ) -// } +// 歌曲可用性 module.exports = (query, request) => { const data = { @@ -46,7 +17,7 @@ module.exports = (query, request) => { } } else{ - response.code = 404 + response.status = 404 response.body = {success: false, message: '亲爱的,暂无版权'} return Promise.reject(response) } diff --git a/module/comment.js b/module/comment.js index 97e97bd2b8665f94eeada52d6e8ac73241619692..5f163d06919beec4b71693a95fce0fe447b46f4b 100644 --- a/module/comment.js +++ b/module/comment.js @@ -1,70 +1,25 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get('Cookie') ? req.get('Cookie') : '' -// const id = req.query.id -// const action = req.query.action == 1 ? 'add' : 'delete' -// const typeMap = { -// 0: 'R_SO_4_', //歌曲 -// 1: 'R_MV_5_', //mv -// 2: 'A_PL_0_', //歌单 -// 3: 'R_AL_3_', //专辑 -// 4: 'A_DJ_1_', //电台 -// 5: 'R_VI_62_' // 视频 -// } -// const type = typeMap[req.query.type] - -// let data = { -// threadId: `${type}${id}`, -// csrf_token: '' -// } - -// if (action == 'add') { -// data = { -// ...data, -// content: req.query.content -// } -// } - -// if (action == 'delete') { -// data = { -// ...data, -// commentId: req.query.commentId -// } -// } - -// const url = `/weapi/resource/comments/${action}` - -// // console.log({ url, data }) -// createWebAPIRequest( -// 'music.163.com', -// url, -// 'POST', -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send('fetch error') -// ) -// } +// 发送与删除评论 module.exports = (query, request) => { - query.cookie = 'os=pc;' + query.cookie - query.action = (query.action == 1 ? 'add' : 'delete') + query.cookie = 'os=pc; ' + query.cookie + query.t = (query.t == 1 ? 'add' : 'delete') query.type = { 0: 'R_SO_4_', // 歌曲 - 1: 'R_MV_5_', // mv + 1: 'R_MV_5_', // MV 2: 'A_PL_0_', // 歌单 3: 'R_AL_3_', // 专辑 4: 'A_DJ_1_', // 电台, 5: 'R_VI_62_' // 视频 }[query.type] const data = { - threadId: `${query.type}${query.id}` + threadId: query.type + query.id } - if(action == 'add') + if(query.t == 'add') data.content = query.content - else if(action == 'delete') + else if(query.t == 'delete') data.commentId = query.commentId return request( - 'POST', `http://music.163.com/weapi/resource/comments/${query.action}`, data, + 'POST', `http://music.163.com/weapi/resource/comments/${query.t}`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/comment_album.js b/module/comment_album.js index caaa93b7bb0ecb7c9390502eebd527de92194e75..da56f03745c6afc2d5cdaefcc2b0d6151443c26f 100644 --- a/module/comment_album.js +++ b/module/comment_album.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/resource/comments/R_AL_3_${rid}/?csrf_token=`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 专辑评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/R_AL_3_${query.id}`, data, diff --git a/module/comment_dj.js b/module/comment_dj.js index 4634a83d8961306aeb1a3a27a59383a99652b082..c436a35cbe7380cf48ed749e9a56887d54499d63 100644 --- a/module/comment_dj.js +++ b/module/comment_dj.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/resource/comments/A_DJ_1_${rid}/?csrf_token=`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 电台评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/A_DJ_1_${query.id}`, data, diff --git a/module/comment_hot.js b/module/comment_hot.js index dce5bb4da381f1da97fb5cb83c1e7d83ade011e8..7a08bfc118296c66db1b0ddc3500d14a3397335c 100644 --- a/module/comment_hot.js +++ b/module/comment_hot.js @@ -1,48 +1,19 @@ -// module.exports = (req, res, createWebAPIRequest) => { -// let cookie = req.get('Cookie') ? req.get('Cookie') : '' -// cookie = 'os=pc;' + cookie -// const rid = req.query.id -// const typeMap = { -// 0: 'R_SO_4_', // 歌曲 -// 1: 'R_MV_5_', // mv -// 2: 'A_PL_0_', // 歌单 -// 3: 'R_AL_3_', // 专辑 -// 4: 'A_DJ_1_', // 电台, -// 5: 'R_VI_62_' // 视频 -// } -// const type = typeMap[req.query.type] -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: '' -// } -// const url = `/weapi/v1/resource/hotcomments/${type}${rid}` -// createWebAPIRequest( -// 'music.163.com', -// url, -// 'POST', -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send('fetch error') -// ) -// } +// 热门评论 module.exports = (query, request) => { - query.cookie = 'os=pc;' + query.cookie + query.cookie = 'os=pc; ' + query.cookie query.type = { 0: 'R_SO_4_', // 歌曲 - 1: 'R_MV_5_', // mv + 1: 'R_MV_5_', // MV 2: 'A_PL_0_', // 歌单 3: 'R_AL_3_', // 专辑 4: 'A_DJ_1_', // 电台, 5: 'R_VI_62_' // 视频 }[query.type] const data = { - offset: query.offset || 0, rid: query.id, - limit: query.limit || 20 + limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/hotcomments/${query.type}${query.id}`, data, diff --git a/module/comment_like.js b/module/comment_like.js index 5f5908c0c07da42331d2066e20b13ee8df952408..ddcc12ce7c932f77576d98ea3b2d0ffb29d3daa5 100644 --- a/module/comment_like.js +++ b/module/comment_like.js @@ -1,50 +1,18 @@ -//comment like -// module.exports = (req, res, createWebAPIRequest, request) => { -// let cookie = req.get('Cookie') ? req.get('Cookie') : '' -// cookie = 'os=pc;' + cookie -// const cid = req.query.cid //评论 id -// const id = req.query.id -// const typeMap = { -// 0: 'R_SO_4_', //歌曲 -// 1: 'R_MV_5_', //mv -// 2: 'A_PL_0_', //歌单 -// 3: 'R_AL_3_', //专辑 -// 4: 'A_DJ_1_', //电台 -// 5: 'R_VI_62_' // 视频 -// } -// const type = typeMap[req.query.type] -// const data = { -// threadId: `${type}${id}`, -// commentId: cid, -// csrf_token: '' -// } -// const action = req.query.t == 1 ? 'like' : 'unlike' - -// const url = `/weapi/v1/comment/${action}` -// createWebAPIRequest( -// 'music.163.com', -// url, -// 'POST', -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send('fetch error') -// ) -// } +// 评论点赞与取消 module.exports = (query, request) => { - query.cookie = 'os=pc;' + query.cookie + query.cookie = 'os=pc; ' + query.cookie query.t = (query.t == 1 ? 'like' : 'unlike') query.type = { 0: 'R_SO_4_', // 歌曲 - 1: 'R_MV_5_', // mv + 1: 'R_MV_5_', // MV 2: 'A_PL_0_', // 歌单 3: 'R_AL_3_', // 专辑 4: 'A_DJ_1_', // 电台, 5: 'R_VI_62_' // 视频 }[query.type] const data = { - threadId: `${query.type}${query.id}`, + threadId: query.type + query.id, commentId: query.cid } return request( diff --git a/module/comment_music.js b/module/comment_music.js index 950a8069d6e5bf59ea28ee7c0f3d7307f41130b6..afb3315df77e7273f6ab79480a1bcfe0bebb7748 100644 --- a/module/comment_music.js +++ b/module/comment_music.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/resource/comments/R_SO_4_${rid}/?csrf_token=`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send(err.message) -// ); -// }; +// 歌曲评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, - limit: query.limit || 20 + limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/R_SO_4_${query.id}`, data, diff --git a/module/comment_mv.js b/module/comment_mv.js index 4ccbb042fcfdef1f54d9dbe68d98dafc77a81421..57133bfd923829e96bbce6c52db96f7d2a262953 100644 --- a/module/comment_mv.js +++ b/module/comment_mv.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/resource/comments/R_MV_5_${rid}/?csrf_token=`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// MV评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, - limit: query.limit || 20 + limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/R_MV_5_${query.id}`, data, diff --git a/module/comment_playlist.js b/module/comment_playlist.js index 6417b50b2085104d43f5c2ac510aef7451d44e15..14314831c4c3d522e8eda4c980fa4dc88c23d901 100644 --- a/module/comment_playlist.js +++ b/module/comment_playlist.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v1/resource/comments/A_PL_0_${rid}/?csrf_token=`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌单评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, - limit: query.limit || 20 + limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/A_PL_0_${query.id}`, data, diff --git a/module/comment_video.js b/module/comment_video.js index bb7477e7489204b1d4ae51b9fb74f35a5f2132d3..7df422129aac89035d6e4703ac5f14fc4fdaabb0 100644 --- a/module/comment_video.js +++ b/module/comment_video.js @@ -1,30 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.id -// const cookie = req.get('Cookie') ? req.get('Cookie') : '' -// const data = { -// offset: req.query.offset || 0, -// rid: rid, -// limit: req.query.limit || 20, -// csrf_token: '' -// } -// createWebAPIRequest( -// 'music.163.com', -// `/weapi/v1/resource/comments/R_VI_62_${rid}/?csrf_token=`, -// 'POST', -// data, -// cookie, -// music_req => { -// res.send(music_req) -// }, -// err => res.status(502).send('fetch error') -// ) -// } +// 视频评论 module.exports = (query, request) => { const data = { - offset: query.offset || 0, rid: query.id, - limit: query.limit || 20 + limit: query.limit || 20, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/v1/resource/comments/R_VI_62_${query.id}`, data, diff --git a/module/daily_signin.js b/module/daily_signin.js index f87b964bcc5d7e3ad2cc65ec2bbf3bbc227fa5e8..f0ba150b78ace15b328c614944c9663398795721 100644 --- a/module/daily_signin.js +++ b/module/daily_signin.js @@ -1,25 +1,11 @@ // 签到 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// let type = req.query.type || 0; //0为安卓端签到 3点经验,1为网页签到,2点经验 -// const data = { -// csrf_token: "", -// type -// }; -// // {'android': {'point': 3, 'code': 200}, 'web': {'point': 2, 'code': 200}} -// // {'android': {'code': -2, 'msg': '重复签到'}, 'web': {'code': -2, 'msg': '重复签到'}} -// // 'android': {'code': 301}, 'web': {'code': 301}} -// createWebAPIRequest( -// "music.163.com", -// "/weapi/point/dailyTask", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +/* + 0为安卓端签到 3点经验, 1为网页签到,2点经验 + 签到成功 {'android': {'point': 3, 'code': 200}, 'web': {'point': 2, 'code': 200}} + 重复签到 {'android': {'code': -2, 'msg': '重复签到'}, 'web': {'code': -2, 'msg': '重复签到'}} + 未登录 {'android': {'code': 301}, 'web': {'code': 301}} +*/ module.exports = (query, request) => { const data = { diff --git a/module/dj_catelist.js b/module/dj_catelist.js index 4544ac54692dc98046c77eb52c6f42d06ee25881..d64709f5fd002ee034ef115a293eafac99f56bcf 100644 --- a/module/dj_catelist.js +++ b/module/dj_catelist.js @@ -1,20 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/category/get", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 电台分类列表 module.exports = (query, request) => { return request( diff --git a/module/dj_detail.js b/module/dj_detail.js index dc2be4534c41efb94ee4ef237c750285b52acde8..35fe0c4e0fc8736e19acf177647c8a7cec0f33bb 100644 --- a/module/dj_detail.js +++ b/module/dj_detail.js @@ -1,23 +1,4 @@ -//djradio detail -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.rid; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// id: rid, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/get", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 电台详情 module.exports = (query, request) => { const data = { diff --git a/module/dj_hot.js b/module/dj_hot.js index 3664fed4ad3c346dd5dd73a4976fd311ee741ed3..175294da6361df0d39be3805dd4cd2abc15952a4 100644 --- a/module/dj_hot.js +++ b/module/dj_hot.js @@ -1,27 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// cat: req.query.type, -// cateId: req.query.type, -// type: req.query.type, -// categoryId: req.query.type, -// category: req.query.type, -// limit: req.query.limit, -// offset: req.query.offset, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/hot/v1", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 热门电台 module.exports = (query, request) => { const data = { diff --git a/module/dj_paygift.js b/module/dj_paygift.js index 9cb1e2a345bea291b13757352d84a9ac72dafab0..2f4680b79c12f806a1045673d2cbb7f3fd169bf1 100644 --- a/module/dj_paygift.js +++ b/module/dj_paygift.js @@ -1,23 +1,4 @@ // 付费电台 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "", -// limit: req.query.limit || 10, -// offset: req.query.offset || 0, -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/home/paygift/list?_nmclfl=1", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; module.exports = (query, request) => { const data = { diff --git a/module/dj_program.js b/module/dj_program.js index 938ffc7e40907972acdbed48f5d967da19c37c7b..9ed4020eacf1c7161d31c41b8a9dfb91de8dc161 100644 --- a/module/dj_program.js +++ b/module/dj_program.js @@ -1,33 +1,11 @@ -//dj主播 radio -// module.exports = (req, res, createWebAPIRequest, request) => { -// const rid = req.query.rid; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// asc: req.query.asc, -// radioId: rid, -// limit: req.query.limit || 30, -// offset: req.query.offset || 0, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/dj/program/byradio", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 电台节目列表 module.exports = (query, request) => { const data = { - asc: query.asc, radioId: query.rid, limit: query.limit || 30, - offset: query.offset || 0 + offset: query.offset || 0, + asc: query.asc } return request( 'POST', `http://music.163.com/weapi/dj/program/byradio`, data, diff --git a/module/dj_program_detail.js b/module/dj_program_detail.js index 3e5475482da49dd27e573306028f166af0fded86..838d9b338c5de1d6d981e150d6b917f551a2f401 100644 --- a/module/dj_program_detail.js +++ b/module/dj_program_detail.js @@ -1,21 +1,4 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// id: req.query.id, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/dj/program/detail", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 电台节目详情 module.exports = (query, request) => { const data = { diff --git a/module/dj_recommend.js b/module/dj_recommend.js index 7552da57493ee68ae398b6d9cffe25017c0c34de..43e7f4e31fc23027366abb1da30af06096521269 100644 --- a/module/dj_recommend.js +++ b/module/dj_recommend.js @@ -1,21 +1,4 @@ // 精选电台 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/recommend/v1", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; module.exports = (query, request) => { return request( diff --git a/module/dj_recommend_type.js b/module/dj_recommend_type.js index 9d503eebaf8bdde1252df73ec2199fbc8be787ec..b39720b4fad74fe0fbcd3805e6a57908feed0d6a 100644 --- a/module/dj_recommend_type.js +++ b/module/dj_recommend_type.js @@ -1,25 +1,30 @@ -//精选电台-分类电台 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// cateId: req.query.type, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/recommend", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 精选电台分类 + +/* + 有声书 10001 + 知识技能 453050 + 商业财经 453051 + 人文历史 11 + 外语世界 13 + 亲子宝贝 14 + 创作|翻唱 2001 + 音乐故事 2 + 3D|电子 10002 + 相声曲艺 8 + 情感调频 3 + 美文读物 6 + 脱口秀 5 + 广播剧 7 + 二次元 3001 + 明星做主播 1 + 娱乐|影视 4 + 科技科学 453052 + 校园|教育 4001 + 旅途|城市 12 +*/ module.exports = (query, request) => { - const data = { + const data = { cateId: query.type } return request( diff --git a/module/dj_sub.js b/module/dj_sub.js index cfca269324c01eb716b6a46c829cb8041b5ddb45..8a2523e2cf5c497218d821d8e12ab58dd8969ba9 100644 --- a/module/dj_sub.js +++ b/module/dj_sub.js @@ -1,26 +1,8 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// id: req.query.rid, -// csrf_token: "" -// }; -// const action = req.query.t == 1 ? "sub" : "unsub"; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/djradio/${action}`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 订阅与取消电台 module.exports = (query, request) => { - query.t = (query.t == 1 ? "sub" : "unsub") - const data = { + query.t = (query.t == 1 ? 'sub' : 'unsub') + const data = { id: query.rid } return request( diff --git a/module/dj_sublist.js b/module/dj_sublist.js index 0782eae68e42f6a323c122bc0b40a853f5bbcc8a..d42c83029aee6e368e3d81ce1ed6521c521663b9 100644 --- a/module/dj_sublist.js +++ b/module/dj_sublist.js @@ -1,29 +1,10 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; - -// const data = { -// offset: req.query.offset || 0, -// total: req.query.total ? "true" : "false", -// limit: req.query.limit || 30 -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/djradio/get/subed", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 我的电台列表 module.exports = (query, request) => { - const data = { + const data = { + limit: query.limit || 30, offset: query.offset || 0, - total: query.total ? "true" : "false", - limit: query.limit || 30 + total: true } return request( 'POST', `http://music.163.com/weapi/djradio/get/subed`, data, diff --git a/module/event.js b/module/event.js index f369e48ecd351bf60418e174442351d2540bfb96..de941b3011ebb7a86115167539a4fd3c7a9944af 100644 --- a/module/event.js +++ b/module/event.js @@ -1,19 +1,4 @@ -//获取动态 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/v1/event/get", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 动态 module.exports = (query, request) => { return request( diff --git a/module/fm_trash.js b/module/fm_trash.js index 4d121667861f2d7b57775c6631c60da182e4561f..38aa28acbc3b277e4de06473de21dad2d81b2b03 100644 --- a/module/fm_trash.js +++ b/module/fm_trash.js @@ -1,27 +1,7 @@ //垃圾桶 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const songId = req.query.id; -// const alg = "RT"; -// const time = req.query.time || 25; -// const data = { -// csrf_token: "", -// songId -// }; - -// createWebAPIRequest( -// "music.163.com", -// `/weapi/radio/trash/add?alg=${alg}&songId=${songId}&time=${time}`, -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; module.exports = (query, request) => { - const data = { + const data = { songId: query.id } return request( diff --git a/module/follow.js b/module/follow.js index e31f0ac2647342fd46a75d14b174ef2106d690ab..460d76bf8423c8c9931ab5670df8bffe85d89c3b 100644 --- a/module/follow.js +++ b/module/follow.js @@ -1,27 +1,9 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// const url = req.query.type == "add" ? "follow" : "delfollow"; -// const id = req.query.id; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/user/${url}/${id}`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 关注与取消关注用户 module.exports = (query, request) => { - query.type = (query.type == "add" ? "follow" : "delfollow") + query.t = (query.t == 1 ? 'follow' : 'delfollow') return request( - 'POST', `http://music.163.com/weapi/user/${query.type}/${query.id}`, {}, + 'POST', `http://music.163.com/weapi/user/${query.t}/${query.id}`, {}, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/like.js b/module/like.js index 821e6b8b1167af183fcc13c6fec5962944b8706d..3e29699f74b6f1f425651c7d6ce481fec0d00ca9 100644 --- a/module/like.js +++ b/module/like.js @@ -1,33 +1,13 @@ -// 喜欢歌曲 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const trackId = req.query.id; -// const like = req.query.like || true; -// const alg = req.query.alg || "itembased"; -// const time = req.query.time || 25; -// const data = { -// csrf_token: "", -// trackId, -// like -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/radio/like?alg=${alg}&trackId=${trackId}&like=${like}&time=${time}`, -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 红心取消红心歌曲 module.exports = (query, request) => { - const data = { + query.like = (query.like ? true : false) + const data = { trackId: query.id, - like: query.like || true + like: query.like } return request( - 'POST', `http://music.163.com/weapi/radio/like?alg=${query.alg || 'itembased'}&trackId=${query.id}&like=${data.like}&time=${query.time || 25}`, data, + 'POST', `http://music.163.com/weapi/radio/like?alg=${query.alg || 'itembased'}&trackId=${query.id}&like=${query.like}&time=${query.time || 25}`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/likelist.js b/module/likelist.js index 8ab9d9e147c1eda70da38451b62ada27262a639b..6dbd62f724288518b1835f49bbdb6b184770531b 100644 --- a/module/likelist.js +++ b/module/likelist.js @@ -1,24 +1,7 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// uid: req.query.uid, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/song/like/get`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 喜欢的歌曲(无序) module.exports = (query, request) => { - const data = { + const data = { uid: query.uid } return request( diff --git a/module/login.js b/module/login.js index 5efe482c79ddae6918120cab6c58184748992229..d3c2345129a7f34dfeab9f88b5673112473413cd 100644 --- a/module/login.js +++ b/module/login.js @@ -1,41 +1,15 @@ -const crypto = require('crypto') - -//邮箱登录 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const email = req.query.email -// const cookie = req.get('Cookie') ? req.get('Cookie') : '' -// const md5sum = crypto.createHash('md5') -// md5sum.update(req.query.password) -// const data = { -// username: email, -// password: md5sum.digest('hex'), -// rememberLogin: 'true' -// } -// console.log(email, req.query.password) +// 邮箱登录 -// createWebAPIRequest( -// 'music.163.com', -// '/weapi/login', -// 'POST', -// data, -// cookie, -// (music_req, cookie) => { -// // console.log(music_req) -// res.append("Set-Cookie", cookie) -// res.send(music_req) -// }, -// err => res.status(502).send('fetch error') -// ) -// } +const crypto = require('crypto') module.exports = (query, request) => { - const data = { + const data = { username: query.email, - password: crypto.createHash("md5").update(query.password).digest("hex"), - rememberLogin: "true" + password: crypto.createHash('md5').update(query.password).digest('hex'), + rememberLogin: 'true' } return request( 'POST', `http://music.163.com/weapi/login`, data, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + {crypto: 'weapi', ua: 'pc', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/login_cellphone.js b/module/login_cellphone.js index 426d5367b6d48e61790b0ac4ad4caa2553e1e8bc..71beb88aeff3d3b4b136c750abaa4c71a7b1dcf1 100644 --- a/module/login_cellphone.js +++ b/module/login_cellphone.js @@ -1,38 +1,15 @@ -const crypto = require("crypto") +// 手机登录 -//手机登录 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const phone = req.query.phone; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const md5sum = crypto.createHash("md5"); -// md5sum.update(req.query.password); -// const data = { -// phone: phone, -// password: md5sum.digest("hex"), -// rememberLogin: "true" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/login/cellphone", -// "POST", -// data, -// cookie, -// (music_req, cookie) => { -// res.append("Set-Cookie", cookie); -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +const crypto = require('crypto') module.exports = (query, request) => { - const data = { + const data = { phone: query.phone, - password: crypto.createHash("md5").update(query.password).digest("hex"), - rememberLogin: "true" + password: crypto.createHash('md5').update(query.password).digest('hex'), + rememberLogin: 'true' } return request( 'POST', `http://music.163.com/weapi/login/cellphone`, data, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + {crypto: 'weapi', ua: 'pc', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/login_refresh.js b/module/login_refresh.js index dd7221f151e9c15ff25af88309b891e39bd47061..fa836126ecf95fb778bc9c41379a3e58f35a8842 100644 --- a/module/login_refresh.js +++ b/module/login_refresh.js @@ -1,26 +1,8 @@ -//登录刷新 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/login/token/refresh`, -// "POST", -// data, -// cookie, -// (music_req, cookie) => { -// res.append("Set-Cookie", cookie); -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 登录刷新 module.exports = (query, request) => { return request( 'POST', `http://music.163.com/weapi/login/token/refresh`, {}, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + {crypto: 'weapi', ua: 'pc', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/login_status.js b/module/login_status.js index d507cbfe003300acf9d445a934f31d145828b8c6..edd21ab8a7cc70c9e6db303f51e13f6154661953 100644 --- a/module/login_status.js +++ b/module/login_status.js @@ -1,26 +1,4 @@ -//登录状态 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// createWebAPIRequest( -// "music.163.com", -// "/", -// "GET", -// {}, -// cookie, -// music_req => { -// try { -// var profile = /GUser\s*=\s*([^;]+);/.exec(music_req)[1]; -// var bindings = /GBinds\s*=\s*([^;]+);/.exec(music_req)[1]; -// profile = eval(`(${profile})`); -// bindings = eval(`(${bindings})`); -// res.send({code: 200, profile: profile, bindings: bindings}); -// } catch (error) { -// res.status(502).send("fetch error"); -// } -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 登录状态 module.exports = (query, request) => { return request( @@ -35,7 +13,7 @@ module.exports = (query, request) => { return response } catch(err){ - response.code = 301 + response.status = 301 response.body = {code: 301} return Promise.reject(response) } diff --git a/module/logout.js b/module/logout.js index e9e9b23fb70f1effa976ede6779030975c6cc20d..8063e1d574c8f197c49d7f4873ce2a6263cda549 100644 --- a/module/logout.js +++ b/module/logout.js @@ -1,23 +1,8 @@ -//登出 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get('Cookie') ? req.get('Cookie') : '' -// createWebAPIRequest( -// 'music.163.com', -// '/weapi/logout', -// 'POST', -// {}, -// cookie, -// (music_req, cookie) => { -// res.append("Set-Cookie", cookie) -// res.send(music_req) -// }, -// err => res.status(502).send('fetch error') -// ) -// } +// 退出登录 module.exports = (query, request) => { return request( 'POST', `http://music.163.com/weapi/logout`, {}, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + {crypto: 'weapi', ua: 'pc', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/lyric.js b/module/lyric.js index 4bf66bec0e158fce576e960e58c545aeb04cde1c..02d9f8cc2837b8340032499de35f6ad63a1db0f4 100644 --- a/module/lyric.js +++ b/module/lyric.js @@ -1,20 +1,4 @@ -// 获取歌词 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = {}; -// const id = req.query.id; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/song/lyric?os=osx&id=" + id + "&lv=-1&kv=-1&tv=-1", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 歌词 module.exports = (query, request) => { return request( diff --git a/module/music_url.js b/module/music_url.js index 95e0745b8f801c79a27085e345cdb51cbed08918..f290cae95ffe81bb710d73e954188e211b2b0564 100644 --- a/module/music_url.js +++ b/module/music_url.js @@ -1,29 +1,4 @@ -// 获取音乐 url -// module.exports = (req, res, createWebAPIRequest, request) => { -// const id = req.query.id; -// const br = req.query.br || 999000; -// const data = { -// ids: [id], -// br: br, -// csrf_token: "" -// }; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; - -// createWebAPIRequest( -// "music.163.com", -// "/weapi/song/enhance/player/url", -// "POST", -// data, -// cookie, -// music_req => { -// res.setHeader("Content-Type", "application/json"); -// res.send(music_req); -// }, -// err => { -// res.status(502).send("fetch error"); -// } -// ); -// }; +// 音乐链接 module.exports = (query, request) => { const data = { diff --git a/module/mv.js b/module/mv.js deleted file mode 100644 index 904f3ecfd92da8dec5701eef2ee26dab8fd47067..0000000000000000000000000000000000000000 --- a/module/mv.js +++ /dev/null @@ -1,30 +0,0 @@ -//mv -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const mvid = req.query.mvid; -// const data = { -// id: mvid -// }; - -// createWebAPIRequest( -// "music.163.com", -// `/weapi/mv/detail`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; - -module.exports = (query, request) => { - const data = { - id: query.mvid - } - return request( - 'POST', `http://music.163.com/weapi/mv/detail`, data, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} - ) -} diff --git a/module/mv_detail.js b/module/mv_detail.js new file mode 100644 index 0000000000000000000000000000000000000000..0c69478219d13dcff20963ddc900e951eeefde08 --- /dev/null +++ b/module/mv_detail.js @@ -0,0 +1,11 @@ +// MV详情 + +module.exports = (query, request) => { + const data = { + id: query.mvid + } + return request( + 'POST', `http://music.163.com/weapi/mv/detail`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/mv_first.js b/module/mv_first.js index 79103ecf055ad60338417e3b0d7825bc04fa639d..59af71a36eaffc21fb0a3984f7e2cd404387e78b 100644 --- a/module/mv_first.js +++ b/module/mv_first.js @@ -1,24 +1,4 @@ -//最新mv - -// type ALL, ZH,EA,KR,JP -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// // 'offset': req.query.offset || 0, -// total: true, -// limit: req.query.limit || 30, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/mv/first", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 最新MV module.exports = (query, request) => { const data = { diff --git a/module/mv_sub.js b/module/mv_sub.js new file mode 100644 index 0000000000000000000000000000000000000000..b87e99bdd6540aa12a3c1a71a472f8afd1719692 --- /dev/null +++ b/module/mv_sub.js @@ -0,0 +1,13 @@ +// 收藏与取消收藏MV + +module.exports = (query, request) => { + query.t = (query.t == 1 ? 'sub' : 'unsub') + const data = { + mvId: query.mvid, + mvIds: '["' + query.mvid + '"]' + } + return request( + 'POST', `http://music.163.com/weapi/mv/${query.t}`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/mv_url.js b/module/mv_url.js index 8971e65d293c5c480c493d0a26c2ffaba7654100..496c93f43f896f683e00ce72ffbc7656380a7250 100644 --- a/module/mv_url.js +++ b/module/mv_url.js @@ -1,18 +1,12 @@ -module.exports = (req, res, createWebAPIRequest, request) => { - const url = req.query.url; - const headers = { - Referer: "http://music.163.com/", - Cookie: "appver=1.5.0.75771;", - "Content-Type": "video/mp4", - Location: url - }; - const options = { - header: headers, - url: url - }; - request(options) - .on("error", err => { - res.send({ err }); - }) - .pipe(res); -}; +// MV链接 + +module.exports = (query, request) => { + const data = { + id: query.id, + r: query.res || 1080 + } + return request( + 'POST', `http://music.163.com/weapi/song/enhance/play/mv/url`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/personal_fm.js b/module/personal_fm.js index 60482c1856bce583e98e7914b6053a5cbf879aa2..128c3f3355b32a5884a012a56f08cdcec93fdd6c 100644 --- a/module/personal_fm.js +++ b/module/personal_fm.js @@ -1,19 +1,4 @@ -// 私人 FM -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/v1/radio/get", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 私人FM module.exports = (query, request) => { return request( diff --git a/module/personalized.js b/module/personalized.js index d4e7a8e86d42034290a0c368ca6af96a0d7c3378..67b9296f069f07ea09fb0bf0eba493038d9e94d9 100644 --- a/module/personalized.js +++ b/module/personalized.js @@ -1,25 +1,4 @@ -//推荐歌单 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// limit: req.query.limit || 30, -// offset: req.query.limit || 0, -// total: true, -// n: 1000, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/personalized/playlist", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 推荐歌单 module.exports = (query, request) => { const data = { diff --git a/module/personalized_djprogram.js b/module/personalized_djprogram.js index e23dd75ddfdcde456f921c9515427b47666c2a2c..9a3de442b1f926f2bb24df3eab79abc9e2cc6b09 100644 --- a/module/personalized_djprogram.js +++ b/module/personalized_djprogram.js @@ -1,19 +1,4 @@ -//推荐dj -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = {}; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/personalized/djprogram", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 推荐电台 module.exports = (query, request) => { return request( diff --git a/module/personalized_mv.js b/module/personalized_mv.js index 529a56d1d2fefd511cdd593bfc9b6045c5577396..23818718262591ca8199f207c4a87d6199b323c8 100644 --- a/module/personalized_mv.js +++ b/module/personalized_mv.js @@ -1,19 +1,4 @@ -//推荐mv -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = {}; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/personalized/mv", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 推荐MV module.exports = (query, request) => { return request( diff --git a/module/personalized_newsong.js b/module/personalized_newsong.js index ad4ae33f0d2325639bed5ac56cec2adcb3e4b73c..7b8ae31136ccbc9fcd4763095de5c5f5398a98bc 100644 --- a/module/personalized_newsong.js +++ b/module/personalized_newsong.js @@ -1,21 +1,4 @@ -//推荐新音乐 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// type: "recommend" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/personalized/newsong", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 推荐新歌 module.exports = (query, request) => { const data = { diff --git a/module/personalized_privatecontent.js b/module/personalized_privatecontent.js index 907c34a157141a55c67da6f651cc2dfb74da47c1..8d130c501b3b2742dd3ee183b75ebadabe26e6af 100644 --- a/module/personalized_privatecontent.js +++ b/module/personalized_privatecontent.js @@ -1,19 +1,4 @@ -//独家放送 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = {}; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/personalized/privatecontent", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 独家放送 module.exports = (query, request) => { return request( diff --git a/module/playlist_catlist.js b/module/playlist_catlist.js index cd236fddcf1b13dde96ad01898bf2f44fb1efb4b..3d4b55724790e905de68877aebcac0c27b9e2bfb 100644 --- a/module/playlist_catlist.js +++ b/module/playlist_catlist.js @@ -1,21 +1,4 @@ // 全部歌单分类 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/playlist/catalogue", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; module.exports = (query, request) => { return request( diff --git a/module/playlist_create.js b/module/playlist_create.js index 8984300bdd08227091a3b48556e6189794e003f7..ab92bc5005b47b14b2bd5cb107b3b9c934267734 100644 --- a/module/playlist_create.js +++ b/module/playlist_create.js @@ -1,23 +1,7 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// name: req.query.name, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/playlist/create", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 创建歌单 module.exports = (query, request) => { + query.cookie = 'os=pc; ' + query.cookie const data = { name: query.name } diff --git a/module/playlist_detail.js b/module/playlist_detail.js index 9a0db4313ac8c59197e0bf2210f5bd41f0964850..306c8f033609705abb5e54430bd0dfe2b96df152 100644 --- a/module/playlist_detail.js +++ b/module/playlist_detail.js @@ -1,29 +1,4 @@ -// 获取歌单内列表 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// id: req.query.id, -// n: 100000, -// s: req.query.s || 8, -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// `/weapi/v3/playlist/detail`, -// "POST", -// data, -// cookie, -// music_req => { -// // console.log(JSON.parse(music_req).playlist.tracks.length) -// // console.log(JSON.parse(music_req).playlist.trackIds.length) -// res.send(music_req); -// }, -// err => { -// res.status(502).send("fetch error"); -// } -// ); -// }; +// 歌单详情 module.exports = (query, request) => { const data = { diff --git a/module/playlist_hot.js b/module/playlist_hot.js index b6cd3dfbb19f3b9b7b415207ac409748746aff1a..bda73b538422e8387b26aec0b4fdbb598ba427a2 100644 --- a/module/playlist_hot.js +++ b/module/playlist_hot.js @@ -1,19 +1,4 @@ // 热门歌单分类 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = {}; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/playlist/hottags", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; module.exports = (query, request) => { return request( diff --git a/module/playlist_subscribe.js b/module/playlist_subscribe.js index 54e408f6d85f97cb026ba941e50041aa1e9ceb26..be2ac356d622319d0b88dbb298e6366ca2befa44 100644 --- a/module/playlist_subscribe.js +++ b/module/playlist_subscribe.js @@ -1,25 +1,7 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// id: req.query.id, -// csrf_token: "" -// }; -// const action = req.query.t == 1 ? "subscribe" : "unsubscribe"; -// createWebAPIRequest( -// "music.163.com", -// `/weapi/playlist/${action}`, -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 收藏与取消收藏歌单 module.exports = (query, request) => { - query.t = (query.t == 1 ? "subscribe" : "unsubscribe") + query.t = (query.t == 1 ? 'subscribe' : 'unsubscribe') const data = { id: query.id } diff --git a/module/playlist_tracks.js b/module/playlist_tracks.js index 418a8a7e4d7a71728bce87d1a31cc329407a87f8..a612232b76fe57619dd08d3820d8a96a03dcf3ac 100644 --- a/module/playlist_tracks.js +++ b/module/playlist_tracks.js @@ -1,36 +1,10 @@ -//收藏单曲到歌单,从歌单删除歌曲 op=del,add;pid=歌单id,tracks=歌曲id -// module.exports = (req, res, createWebAPIRequest, request) => { -// const op = req.query.op; -// const pid = req.query.pid; -// // const tracks = req.query.tracks.split(',') -// const tracks = req.query.tracks; -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// // console.log('COOKIESS', cookie) -// const data = { -// op: op, -// pid: pid, -// // tracks: (tracks.length == 1) ? tracks[0] : Array.apply(null,{length:tracks.length}).map(()=>({})).join(','), -// // trackIds: (tracks.length == 1) ? JSON.stringify(tracks) : `[${tracks.join(',')}]` -// trackIds: `[${tracks}]`, -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// "/weapi/playlist/manipulate/tracks", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 收藏单曲到歌单 从歌单删除歌曲 module.exports = (query, request) => { const data = { - op: query.op, - pid: query.pid, - trackIds: '[' + query.tracks + ']' + op: query.op, // del,add + pid: query.pid, // 歌单id + trackIds: '[' + query.tracks + ']' // 歌曲id } return request( 'POST', `http://music.163.com/weapi/playlist/manipulate/tracks`, data, diff --git a/module/playlist_update.js b/module/playlist_update.js index 3acb53c2cca23535b7a270723369eb12da9975f6..29dab73059391d49474cceabf4d5b31b633076f2 100644 --- a/module/playlist_update.js +++ b/module/playlist_update.js @@ -1,38 +1,13 @@ -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const playlist_id = req.query.id; -// const desc_detail = req.query.desc || ""; -// const tags_detail = req.query.tags || ""; -// const name_detail = req.query.name; -// const data = { -// "/api/playlist/desc/update": -// '{"id":' + playlist_id + ',"desc":"' + desc_detail + '"}', -// "/api/playlist/tags/update": -// '{"id":' + playlist_id + ',"tags":"' + tags_detail + '"}', -// "/api/playlist/update/name": -// '{"id":' + playlist_id + ',"name":"' + name_detail + '"}', -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/batch", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 编辑歌单 -module.exports = (query, request) => { +module.exports = (query, request) => { + query.cookie = 'os=pc; ' + query.cookie query.desc = query.desc || '' query.tags = query.tags || '' const data = { "/api/playlist/desc/update": `{"id":${query.id},"desc":"${query.desc}"}`, - "/api/playlist/tags/update": `{"id":${query.id},"desc":"${query.tags}"}`, - "/api/playlist/update/name": `{"id":${query.id},"desc":"${query.name}"}` + "/api/playlist/tags/update": `{"id":${query.id},"tags":"${query.tags}"}`, + "/api/playlist/update/name": `{"id":${query.id},"name":"${query.name}"}` } return request( 'POST', `http://music.163.com/weapi/batch`, data, diff --git a/module/program_recommend.js b/module/program_recommend.js index a3967a5bc9c1ba58221d9e709ca56222398d4ed0..55f7a6eb3ae1f7c72f3c261f8eb6e0539f53520e 100644 --- a/module/program_recommend.js +++ b/module/program_recommend.js @@ -1,29 +1,13 @@ -//推荐节目 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// cateId: req.query.type, -// csrf_token: "" -// }; -// createWebAPIRequest( -// "music.163.com", -// "/weapi/program/recommend/v1", -// "POST", -// data, -// cookie, -// music_req => { -// res.send(music_req); -// }, -// err => res.status(502).send("fetch error") -// ); -// }; +// 推荐节目 module.exports = (query, request) => { const data = { - cateId: query.type + cateId: query.type, + limit: query.limit || 10, + offset: query.offset || 0 } return request( 'POST', `http://music.163.com/weapi/program/recommend/v1`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) -} +} \ No newline at end of file diff --git a/module/recommend_dislike.js b/module/recommend_dislike.js deleted file mode 100644 index 72db86bee1b27e939ddff0c7b6f7d548ff3fc4a0..0000000000000000000000000000000000000000 --- a/module/recommend_dislike.js +++ /dev/null @@ -1,24 +0,0 @@ -//取消推荐 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// "/weapi/v1/radio/get", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; - -module.exports = (query, request) => { - return request( - 'POST', `http://music.163.com/weapi/v1/radio/get`, {}, - {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} - ) -} \ No newline at end of file diff --git a/module/recommend_resource.js b/module/recommend_resource.js index 0394231d6cd9098dcc6171810b36ce099c2cf3c3..d66913f8afec89307458b29872996548665314ae 100644 --- a/module/recommend_resource.js +++ b/module/recommend_resource.js @@ -1,20 +1,4 @@ -// 获取每日推荐歌单 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// "/weapi/v1/discovery/recommend/resource", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 每日推荐歌单 module.exports = (query, request) => { return request( diff --git a/module/recommend_songs.js b/module/recommend_songs.js index 097ed4d9412b989c96bca012f2c3255785953370..8804e500dc0927c59451102bdaf7912bfa1ba960 100644 --- a/module/recommend_songs.js +++ b/module/recommend_songs.js @@ -1,32 +1,13 @@ -// 获取每日推荐歌曲 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const cookie = req.get("Cookie") ? req.get("Cookie") : ""; -// const data = { -// offset: 0, -// total: true, -// limit: 20, -// csrf_token: "" -// }; - -// createWebAPIRequest( -// "music.163.com", -// "/weapi/v1/discovery/recommend/songs", -// "POST", -// data, -// cookie, -// music_req => res.send(music_req), -// err => res.status(502).send("fetch error") -// ); -// }; +// 每日推荐歌曲 module.exports = (query, request) => { const data = { - offset: 0, limit: 20, + offset: 0, total: true } return request( - 'POST', `http://music.163.com/weapi/v1/discovery/recommend/resource`, data, + 'POST', `http://music.163.com/weapi/v1/discovery/recommend/songs`, data, {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} ) } \ No newline at end of file diff --git a/module/related_allvideo.js b/module/related_allvideo.js new file mode 100644 index 0000000000000000000000000000000000000000..1d6e635aaa10b279a4f3d42bd972834d4d7384c8 --- /dev/null +++ b/module/related_allvideo.js @@ -0,0 +1,12 @@ +// 相关视频 + +module.exports = (query, request) => { + const data = { + id: query.id, + type: (/^\d+$/.test(query.id)) ? 0 : 1 + } + return request( + 'POST', `http://music.163.com/weapi/cloudvideo/v1/allvideo/rcmd`, data, + {crypto: 'weapi', cookie: query.cookie, proxy: query.proxy} + ) +} \ No newline at end of file diff --git a/module/related_playlist.js b/module/related_playlist.js index b11934fd99d99e30d8a42f931fdd0b212629f971..c7431ee7583606fd270d961f62251f6bacfa1117 100644 --- a/module/related_playlist.js +++ b/module/related_playlist.js @@ -1,40 +1,4 @@ -//related ,相关歌单 -// module.exports = (req, res, createWebAPIRequest, request) => { -// const options = { -// url: "http://music.163.com/playlist?id=" + req.query.id, -// method: "GET", -// headers: { -// Referer: "http://music.163.com", -// "User-Agent": -// "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3380.0 Safari/537.36" -// } -// }; -// request(options, (error, response, body) => { -// if (error) { -// res.status(502).send("fetch error"); -// } else { -// try { -// const pattern = /