@sansenjian/qq-music-api 1.0.6 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/.babelrc +2 -2
  2. package/.dockerignore +5 -5
  3. package/.editorconfig +31 -31
  4. package/.eslintrc.json +21 -17
  5. package/.github/FUNDING.yml +12 -12
  6. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -38
  7. package/.github/ISSUE_TEMPLATE/custom.md +24 -24
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +20 -20
  9. package/.github/workflows/publish.yml +26 -0
  10. package/.husky/commit-msg +1 -0
  11. package/.husky/pre-commit +1 -0
  12. package/.prettierignore +1 -1
  13. package/.prettierrc +9 -9
  14. package/CHANGELOG.md +70 -70
  15. package/Dockerfile +18 -18
  16. package/LICENSE +21 -21
  17. package/README.md +218 -177
  18. package/app.js +75 -75
  19. package/commitlint.config.js +20 -20
  20. package/config/user-info.js +42 -42
  21. package/index.js +1 -1
  22. package/middlewares/koa-cors.js +97 -97
  23. package/module/apis/UCommon/UCommon.js +6 -6
  24. package/module/apis/album/getAlbumInfo.js +33 -33
  25. package/module/apis/comments/getComments.js +35 -35
  26. package/module/apis/digitalAlbum/getDigitalAlbumLists.js +34 -34
  27. package/module/apis/downloadQQMusic.js +41 -41
  28. package/module/apis/music/getLyric.js +42 -41
  29. package/module/apis/mv/getMvByTag.js +35 -35
  30. package/module/apis/radio/getRadioLists.js +38 -38
  31. package/module/apis/rank/getTopLists.js +44 -44
  32. package/module/apis/search/getHotKey.js +35 -35
  33. package/module/apis/search/getSearchByKey.js +45 -45
  34. package/module/apis/search/getSmartbox.js +34 -34
  35. package/module/apis/singers/getSimilarSinger.js +36 -36
  36. package/module/apis/singers/getSingerDesc.js +38 -38
  37. package/module/apis/singers/getSingerMv.js +35 -35
  38. package/module/apis/singers/getSingerStarNum.js +36 -36
  39. package/module/apis/songLists/songListCategories.js +33 -33
  40. package/module/apis/songLists/songListDetail.js +38 -38
  41. package/module/apis/songLists/songLists.js +41 -41
  42. package/module/apis/u_common.js +17 -16
  43. package/module/apis/user/checkQQLoginQr.js +125 -86
  44. package/module/apis/user/getQQLoginQr.js +17 -11
  45. package/module/apis/y_common.js +27 -14
  46. package/module/config.js +31 -31
  47. package/module/index.js +82 -82
  48. package/package.json +72 -83
  49. package/public/index.html +47 -47
  50. package/routers/context/batchGetSongInfo.js +59 -59
  51. package/routers/context/batchGetSongLists.js +50 -50
  52. package/routers/context/checkQQLoginQr.js +17 -15
  53. package/routers/context/cookies.js +36 -36
  54. package/routers/context/getAlbumInfo.js +27 -27
  55. package/routers/context/getComments.js +51 -51
  56. package/routers/context/getDigitalAlbumLists.js +14 -14
  57. package/routers/context/getDownloadQQMusic.js +14 -14
  58. package/routers/context/getHotkey.js +14 -14
  59. package/routers/context/getImageUrl.js +34 -34
  60. package/routers/context/getLyric.js +26 -26
  61. package/routers/context/getMusicPlay.js +116 -112
  62. package/routers/context/getMv.js +56 -56
  63. package/routers/context/getMvByTag.js +15 -15
  64. package/routers/context/getMvPlay.js +128 -118
  65. package/routers/context/getNewDisks.js +50 -51
  66. package/routers/context/getQQLoginQr.js +12 -12
  67. package/routers/context/getRadioLists.js +14 -14
  68. package/routers/context/getRanks.js +90 -86
  69. package/routers/context/getRecommend.js +86 -86
  70. package/routers/context/getSearchByKey.js +32 -32
  71. package/routers/context/getSimilarSinger.js +25 -25
  72. package/routers/context/getSingerAlbum.js +52 -52
  73. package/routers/context/getSingerDesc.js +25 -25
  74. package/routers/context/getSingerHotsong.js +52 -52
  75. package/routers/context/getSingerList.js +51 -52
  76. package/routers/context/getSingerMv.js +32 -32
  77. package/routers/context/getSingerStarNum.js +24 -24
  78. package/routers/context/getSmartbox.js +24 -24
  79. package/routers/context/getSongInfo.js +49 -49
  80. package/routers/context/getSongListCategories.js +22 -22
  81. package/routers/context/getSongListDetail.js +25 -25
  82. package/routers/context/getSongLists.js +32 -32
  83. package/routers/context/getTicketInfo.js +45 -45
  84. package/routers/context/getTopLists.js +15 -15
  85. package/routers/context/index.js +74 -74
  86. package/routers/router.js +116 -112
  87. package/scripts/build-images.js +36 -36
  88. package/scripts/commit-push.sh +103 -103
  89. package/util/colors.js +16 -16
  90. package/util/cookie.js +22 -22
  91. package/util/loginUtils.js +28 -23
  92. package/util/lyricParse.js +64 -64
  93. package/util/request.js +57 -57
  94. package/vercel.json +15 -15
@@ -1,25 +1,25 @@
1
- const { songListDetail } = require('../../module');
2
-
3
- /**
4
- * @description: 2, 3
5
- * @param {page} 页数
6
- * @param {limit} 每页条数[20, 60]
7
- * @param {categoryId} 分类
8
- * @param {sortId} 分类
9
- * @return:
10
- */
11
- module.exports = async (ctx, next) => {
12
- const { disstid } = ctx.query;
13
- const props = {
14
- method: 'get',
15
- params: {
16
- disstid,
17
- },
18
- option: {},
19
- };
20
- const { status, body } = await songListDetail(props);
21
- Object.assign(ctx, {
22
- status,
23
- body,
24
- });
25
- };
1
+ const { songListDetail } = require('../../module');
2
+
3
+ /**
4
+ * @description: 2, 3
5
+ * @param {page} 页数
6
+ * @param {limit} 每页条数[20, 60]
7
+ * @param {categoryId} 分类
8
+ * @param {sortId} 分类
9
+ * @return:
10
+ */
11
+ module.exports = async (ctx, next) => {
12
+ const { disstid } = ctx.query;
13
+ const props = {
14
+ method: 'get',
15
+ params: {
16
+ disstid,
17
+ },
18
+ option: {},
19
+ };
20
+ const { status, body } = await songListDetail(props);
21
+ Object.assign(ctx, {
22
+ status,
23
+ body,
24
+ });
25
+ };
@@ -1,32 +1,32 @@
1
- const { songLists } = require('../../module');
2
-
3
- /**
4
- * @description: 2, 3
5
- * @param {page} 页数
6
- * @param {limit} 每页条数[20, 60]
7
- * @param {categoryId} 分类
8
- * @param {sortId} 分类
9
- * @return:
10
- */
11
- module.exports = async (ctx, next) => {
12
- const { limit = 20, page = 0, sortId = 5, categoryId = 10000000 } = ctx.query;
13
- // BUGFIX: https://github.com/Rain120/qq-music-api/issues/16
14
- const sin = +page * +limit;
15
- const ein = +limit * (+page + 1) - 1;
16
- const params = Object.assign({
17
- categoryId,
18
- sortId,
19
- sin,
20
- ein,
21
- });
22
- const props = {
23
- method: 'get',
24
- params,
25
- option: {},
26
- };
27
- const { status, body } = await songLists(props);
28
- Object.assign(ctx, {
29
- status,
30
- body,
31
- });
32
- };
1
+ const { songLists } = require('../../module');
2
+
3
+ /**
4
+ * @description: 2, 3
5
+ * @param {page} 页数
6
+ * @param {limit} 每页条数[20, 60]
7
+ * @param {categoryId} 分类
8
+ * @param {sortId} 分类
9
+ * @return:
10
+ */
11
+ module.exports = async (ctx, next) => {
12
+ const { limit = 20, page = 0, sortId = 5, categoryId = 10000000 } = ctx.query;
13
+ // BUGFIX: https://github.com/Rain120/qq-music-api/issues/16
14
+ const sin = +page * +limit;
15
+ const ein = +limit * (+page + 1) - 1;
16
+ const params = Object.assign({
17
+ categoryId,
18
+ sortId,
19
+ sin,
20
+ ein,
21
+ });
22
+ const props = {
23
+ method: 'get',
24
+ params,
25
+ option: {},
26
+ };
27
+ const { status, body } = await songLists(props);
28
+ Object.assign(ctx, {
29
+ status,
30
+ body,
31
+ });
32
+ };
@@ -1,45 +1,45 @@
1
- const { UCommon } = require('../../module');
2
-
3
- module.exports = async (ctx, next) => {
4
- const data = {
5
- comm: {
6
- ct: 24,
7
- cv: 0,
8
- },
9
- getFirstData: {
10
- module: 'mall.ticket_index_page_svr',
11
- method: 'GetTicketIndexPage',
12
- param: {
13
- city_id: -1,
14
- },
15
- },
16
- getTag: {
17
- module: 'mall.ticket_index_page_svr',
18
- method: 'GetShowTypeList',
19
- param: {},
20
- },
21
- };
22
- const params = Object.assign({
23
- format: 'json',
24
- inCharset: 'utf8',
25
- outCharset: 'GB2312',
26
- platform: 'yqq.json',
27
- data: JSON.stringify(data),
28
- });
29
- const props = {
30
- method: 'get',
31
- params,
32
- option: {},
33
- };
34
- await UCommon(props)
35
- .then(res => {
36
- const response = res.data;
37
- ctx.status = 200;
38
- ctx.body = {
39
- response,
40
- };
41
- })
42
- .catch(error => {
43
- console.log('error', error);
44
- });
45
- };
1
+ const { UCommon } = require('../../module');
2
+
3
+ module.exports = async (ctx, next) => {
4
+ const data = {
5
+ comm: {
6
+ ct: 24,
7
+ cv: 0,
8
+ },
9
+ getFirstData: {
10
+ module: 'mall.ticket_index_page_svr',
11
+ method: 'GetTicketIndexPage',
12
+ param: {
13
+ city_id: -1,
14
+ },
15
+ },
16
+ getTag: {
17
+ module: 'mall.ticket_index_page_svr',
18
+ method: 'GetShowTypeList',
19
+ param: {},
20
+ },
21
+ };
22
+ const params = Object.assign({
23
+ format: 'json',
24
+ inCharset: 'utf8',
25
+ outCharset: 'GB2312',
26
+ platform: 'yqq.json',
27
+ data: JSON.stringify(data),
28
+ });
29
+ const props = {
30
+ method: 'get',
31
+ params,
32
+ option: {},
33
+ };
34
+ await UCommon(props)
35
+ .then(res => {
36
+ const response = res.data;
37
+ ctx.status = 200;
38
+ ctx.body = {
39
+ response,
40
+ };
41
+ })
42
+ .catch(error => {
43
+ console.log('error', error);
44
+ });
45
+ };
@@ -1,15 +1,15 @@
1
- const { getTopLists } = require('../../module');
2
- const { commonParams } = require('../../module/config');
3
-
4
- module.exports = async (ctx, next) => {
5
- const props = {
6
- method: 'get',
7
- params: commonParams,
8
- option: {},
9
- };
10
- const { status, body } = await getTopLists(props);
11
- Object.assign(ctx, {
12
- status,
13
- body,
14
- });
15
- };
1
+ const { getTopLists } = require('../../module');
2
+ const { commonParams } = require('../../module/config');
3
+
4
+ module.exports = async (ctx, next) => {
5
+ const props = {
6
+ method: 'get',
7
+ params: commonParams,
8
+ option: {},
9
+ };
10
+ const { status, body } = await getTopLists(props);
11
+ Object.assign(ctx, {
12
+ status,
13
+ body,
14
+ });
15
+ };
@@ -1,74 +1,74 @@
1
- const getDownloadQQMusic = require('./getDownloadQQMusic');
2
- const getHotKey = require('./getHotkey');
3
- const getSearchByKey = require('./getSearchByKey');
4
- const getSmartbox = require('./getSmartbox');
5
- const getSongListCategories = require('./getSongListCategories');
6
- const getSongLists = require('./getSongLists');
7
- const batchGetSongLists = require('./batchGetSongLists');
8
- const getSongInfo = require('./getSongInfo');
9
- const batchGetSongInfo = require('./batchGetSongInfo');
10
- const getSongListDetail = require('./getSongListDetail');
11
- const getNewDisks = require('./getNewDisks');
12
- const getMvByTag = require('./getMvByTag');
13
- const getMv = require('./getMv');
14
- const getSingerList = require('./getSingerList');
15
- const getSimilarSinger = require('./getSimilarSinger');
16
- const getSingerAlbum = require('./getSingerAlbum');
17
- const getSingerHotsong = require('./getSingerHotsong');
18
- const getSingerMv = require('./getSingerMv');
19
- const getSingerDesc = require('./getSingerDesc');
20
- const getSingerStarNum = require('./getSingerStarNum');
21
- const getRadioLists = require('./getRadioLists');
22
- const getDigitalAlbumLists = require('./getDigitalAlbumLists');
23
- const getLyric = require('./getLyric');
24
- const getMusicPlay = require('./getMusicPlay');
25
- const getAlbumInfo = require('./getAlbumInfo');
26
- const getComments = require('./getComments');
27
- const getRecommend = require('./getRecommend');
28
- const getMvPlay = require('./getMvPlay');
29
- const getTopLists = require('./getTopLists');
30
- const getRanks = require('./getRanks');
31
- const getTicketInfo = require('./getTicketInfo');
32
- const getImageUrl = require('./getImageUrl');
33
- const getQQLoginQr = require('./getQQLoginQr');
34
- const checkQQLoginQr = require('./checkQQLoginQr');
35
- const {get: getCookie, set: setCookie} = require('./cookies');
36
-
37
- module.exports = {
38
- getCookie,
39
- setCookie,
40
- getDownloadQQMusic,
41
- getHotKey,
42
- getSearchByKey,
43
- getSmartbox,
44
- getSongListCategories,
45
- getSongLists,
46
- batchGetSongLists,
47
- getSongInfo,
48
- batchGetSongInfo,
49
- getSongListDetail,
50
- getNewDisks,
51
- getMvByTag,
52
- getMv,
53
- getSingerList,
54
- getSimilarSinger,
55
- getSingerAlbum,
56
- getSingerHotsong,
57
- getSingerMv,
58
- getSingerDesc,
59
- getSingerStarNum,
60
- getRadioLists,
61
- getDigitalAlbumLists,
62
- getLyric,
63
- getMusicPlay,
64
- getAlbumInfo,
65
- getComments,
66
- getRecommend,
67
- getMvPlay,
68
- getTopLists,
69
- getRanks,
70
- getTicketInfo,
71
- getImageUrl,
72
- getQQLoginQr,
73
- checkQQLoginQr
74
- };
1
+ const getDownloadQQMusic = require('./getDownloadQQMusic');
2
+ const getHotKey = require('./getHotkey');
3
+ const getSearchByKey = require('./getSearchByKey');
4
+ const getSmartbox = require('./getSmartbox');
5
+ const getSongListCategories = require('./getSongListCategories');
6
+ const getSongLists = require('./getSongLists');
7
+ const batchGetSongLists = require('./batchGetSongLists');
8
+ const getSongInfo = require('./getSongInfo');
9
+ const batchGetSongInfo = require('./batchGetSongInfo');
10
+ const getSongListDetail = require('./getSongListDetail');
11
+ const getNewDisks = require('./getNewDisks');
12
+ const getMvByTag = require('./getMvByTag');
13
+ const getMv = require('./getMv');
14
+ const getSingerList = require('./getSingerList');
15
+ const getSimilarSinger = require('./getSimilarSinger');
16
+ const getSingerAlbum = require('./getSingerAlbum');
17
+ const getSingerHotsong = require('./getSingerHotsong');
18
+ const getSingerMv = require('./getSingerMv');
19
+ const getSingerDesc = require('./getSingerDesc');
20
+ const getSingerStarNum = require('./getSingerStarNum');
21
+ const getRadioLists = require('./getRadioLists');
22
+ const getDigitalAlbumLists = require('./getDigitalAlbumLists');
23
+ const getLyric = require('./getLyric');
24
+ const getMusicPlay = require('./getMusicPlay');
25
+ const getAlbumInfo = require('./getAlbumInfo');
26
+ const getComments = require('./getComments');
27
+ const getRecommend = require('./getRecommend');
28
+ const getMvPlay = require('./getMvPlay');
29
+ const getTopLists = require('./getTopLists');
30
+ const getRanks = require('./getRanks');
31
+ const getTicketInfo = require('./getTicketInfo');
32
+ const getImageUrl = require('./getImageUrl');
33
+ const getQQLoginQr = require('./getQQLoginQr');
34
+ const checkQQLoginQr = require('./checkQQLoginQr');
35
+ const { get: getCookie, set: setCookie } = require('./cookies');
36
+
37
+ module.exports = {
38
+ getCookie,
39
+ setCookie,
40
+ getDownloadQQMusic,
41
+ getHotKey,
42
+ getSearchByKey,
43
+ getSmartbox,
44
+ getSongListCategories,
45
+ getSongLists,
46
+ batchGetSongLists,
47
+ getSongInfo,
48
+ batchGetSongInfo,
49
+ getSongListDetail,
50
+ getNewDisks,
51
+ getMvByTag,
52
+ getMv,
53
+ getSingerList,
54
+ getSimilarSinger,
55
+ getSingerAlbum,
56
+ getSingerHotsong,
57
+ getSingerMv,
58
+ getSingerDesc,
59
+ getSingerStarNum,
60
+ getRadioLists,
61
+ getDigitalAlbumLists,
62
+ getLyric,
63
+ getMusicPlay,
64
+ getAlbumInfo,
65
+ getComments,
66
+ getRecommend,
67
+ getMvPlay,
68
+ getTopLists,
69
+ getRanks,
70
+ getTicketInfo,
71
+ getImageUrl,
72
+ getQQLoginQr,
73
+ checkQQLoginQr,
74
+ };
package/routers/router.js CHANGED
@@ -1,112 +1,116 @@
1
- const Router = require('koa-router');
2
- const router = new Router();
3
- const context = require('./context');
4
-
5
- // cookies
6
- router.get('/user/getCookie', context.getCookie);
7
- router.get('/user/setCookie', context.setCookie);
8
-
9
- // downloadQQMusic
10
- router.get('/downloadQQMusic', context.getDownloadQQMusic);
11
-
12
- router.get('/getHotkey', context.getHotKey);
13
-
14
- router.get('/getSearchByKey/:key?/:limit?/:page?/:catZhida?', context.getSearchByKey);
15
-
16
- // search smartbox
17
- router.get('/getSmartbox/:key?', context.getSmartbox);
18
-
19
- // 1
20
- router.get('/getSongListCategories', context.getSongListCategories);
21
-
22
- router.get('/getSongLists/:page?/:limit?/:categoryId?/:sortId?', context.getSongLists);
23
-
24
- router.post('/batchGetSongLists', context.batchGetSongLists);
25
-
26
- // getSongInfo
27
- router.get('/getSongInfo/:songmid?/:songid?', context.getSongInfo);
28
- router.post('/batchGetSongInfo', context.batchGetSongInfo);
29
-
30
- // 4
31
- // disstid=7011264340
32
- router.get('/getSongListDetail/:disstid?', context.getSongListDetail);
33
-
34
- // newDisk
35
- router.get('/getNewDisks/:page?/:limit?', context.getNewDisks);
36
-
37
- // getMvByTag
38
- router.get('/getMvByTag', context.getMvByTag);
39
-
40
- // MV
41
- // area_id=15&version_id=7
42
- router.get('/getMv/:area_id?/:version_id?/:limit?/:page?', context.getMv);
43
-
44
- // getSingerList
45
- router.get('/getSingerList/:area?/:sex?/:genre?/:index?/:page?', context.getSingerList);
46
-
47
- // getSimilarSinger
48
- // singermid=0025NhlN2yWrP4
49
- router.get('/getSimilarSinger/:singermid?', context.getSimilarSinger);
50
-
51
- // getSingerAlbum
52
- // singermid=0025NhlN2yWrP4
53
- router.get('/getSingerAlbum/:singermid?/:limit?/:page?', context.getSingerAlbum);
54
-
55
- router.get('/getSingerHotsong/:singermid?/:limit?/:page?', context.getSingerHotsong);
56
-
57
- /**
58
- * @description: getSingerMv
59
- * @param order: time(fan upload) || listen(singer all)
60
- */
61
- router.get('/getSingerMv/:singermid?/:limit?/:order?', context.getSingerMv);
62
-
63
- router.get('/getSingerDesc/:singermid?', context.getSingerDesc);
64
-
65
- router.get('/getSingerStarNum/:singermid?', context.getSingerStarNum);
66
-
67
- // radio
68
- router.get('/getRadioLists', context.getRadioLists);
69
-
70
- // DigitalAlbum
71
- router.get('/getDigitalAlbumLists', context.getDigitalAlbumLists);
72
-
73
- // music
74
- // getLyric
75
- // songmid=003rJSwm3TechU
76
- router.get('/getLyric/:songmid?/:isFormat?', context.getLyric);
77
-
78
- // songmid=003rJSwm3TechU
79
- router.get('/getMusicPlay/:songmid?', context.getMusicPlay);
80
-
81
- // album
82
- // albummid=0016l2F430zMux
83
- router.get('/getAlbumInfo/:albummid?', context.getAlbumInfo);
84
-
85
- router.get(
86
- '/getComments/:id?/:rootcommentid?/:cid?/:pagesize?/:pagenum?/:cmd?/:reqtype?/:biztype?',
87
- context.getComments,
88
- );
89
-
90
- // recommend
91
- router.get('/getRecommend', context.getRecommend);
92
-
93
- // mv play
94
- router.get('/getMvPlay/:vid?', context.getMvPlay);
95
-
96
- // rankList: getTopLists
97
- router.get('/getTopLists', context.getTopLists);
98
-
99
- // ranks
100
- router.get('/getRanks/:topId?/:limit?/:page?', context.getRanks);
101
-
102
- // ticket
103
- router.get('/getTicketInfo', context.getTicketInfo);
104
-
105
- // getImageUrl
106
- router.get('/getImageUrl', context.getImageUrl);
107
-
108
- // getQQLoginQr
109
- router.get('/user/getQQLoginQr', context.getQQLoginQr);
110
- router.post('/user/checkQQLoginQr', context.checkQQLoginQr);
111
-
112
- module.exports = router;
1
+ const Router = require('@koa/router');
2
+ const router = new Router();
3
+ const context = require('./context');
4
+
5
+ // cookies
6
+ router.get('/user/getCookie', context.getCookie);
7
+ router.get('/user/setCookie', context.setCookie);
8
+
9
+ // downloadQQMusic
10
+ router.get('/downloadQQMusic', context.getDownloadQQMusic);
11
+
12
+ router.get('/getHotkey', context.getHotKey);
13
+
14
+ router.get('/getSearchByKey/:key?/:limit?/:page?/:catZhida?', context.getSearchByKey);
15
+
16
+ // search smartbox
17
+ router.get('/getSmartbox/:key?', context.getSmartbox);
18
+
19
+ // 1
20
+ router.get('/getSongListCategories', context.getSongListCategories);
21
+
22
+ router.get('/getSongLists/:page?/:limit?/:categoryId?/:sortId?', context.getSongLists);
23
+
24
+ router.post('/batchGetSongLists', context.batchGetSongLists);
25
+
26
+ // getSongInfo
27
+ router.get('/getSongInfo/:songmid?/:songid?', context.getSongInfo);
28
+ router.post('/batchGetSongInfo', context.batchGetSongInfo);
29
+
30
+ // 4
31
+ // disstid=7011264340
32
+ router.get('/getSongListDetail/:disstid?', context.getSongListDetail);
33
+
34
+ // newDisk
35
+ router.get('/getNewDisks/:page?/:limit?', context.getNewDisks);
36
+
37
+ // getMvByTag
38
+ router.get('/getMvByTag', context.getMvByTag);
39
+
40
+ // MV
41
+ // area_id=15&version_id=7
42
+ router.get('/getMv/:area_id?/:version_id?/:limit?/:page?', context.getMv);
43
+
44
+ // getSingerList
45
+ router.get('/getSingerList/:area?/:sex?/:genre?/:index?/:page?', context.getSingerList);
46
+
47
+ // getSimilarSinger
48
+ // singermid=0025NhlN2yWrP4
49
+ router.get('/getSimilarSinger/:singermid?', context.getSimilarSinger);
50
+
51
+ // getSingerAlbum
52
+ // singermid=0025NhlN2yWrP4
53
+ router.get('/getSingerAlbum/:singermid?/:limit?/:page?', context.getSingerAlbum);
54
+
55
+ router.get('/getSingerHotsong/:singermid?/:limit?/:page?', context.getSingerHotsong);
56
+
57
+ /**
58
+ * @description: getSingerMv
59
+ * @param order: time(fan upload) || listen(singer all)
60
+ */
61
+ router.get('/getSingerMv/:singermid?/:limit?/:order?', context.getSingerMv);
62
+
63
+ router.get('/getSingerDesc/:singermid?', context.getSingerDesc);
64
+
65
+ router.get('/getSingerStarNum/:singermid?', context.getSingerStarNum);
66
+
67
+ // radio
68
+ router.get('/getRadioLists', context.getRadioLists);
69
+
70
+ // DigitalAlbum
71
+ router.get('/getDigitalAlbumLists', context.getDigitalAlbumLists);
72
+
73
+ // music
74
+ // getLyric
75
+ // songmid=003rJSwm3TechU
76
+ router.get('/getLyric/:songmid?/:isFormat?', context.getLyric);
77
+
78
+ // songmid=003rJSwm3TechU
79
+ router.get('/getMusicPlay/:songmid?', context.getMusicPlay);
80
+
81
+ // album
82
+ // albummid=0016l2F430zMux
83
+ router.get('/getAlbumInfo/:albummid?', context.getAlbumInfo);
84
+
85
+ router.get(
86
+ '/getComments/:id?/:rootcommentid?/:cid?/:pagesize?/:pagenum?/:cmd?/:reqtype?/:biztype?',
87
+ context.getComments,
88
+ );
89
+
90
+ // recommend
91
+ router.get('/getRecommend', context.getRecommend);
92
+
93
+ // mv play
94
+ router.get('/getMvPlay/:vid?', context.getMvPlay);
95
+
96
+ // rankList: getTopLists
97
+ router.get('/getTopLists', context.getTopLists);
98
+
99
+ // ranks
100
+ router.get('/getRanks/:topId?/:limit?/:page?', context.getRanks);
101
+
102
+ // ticket
103
+ router.get('/getTicketInfo', context.getTicketInfo);
104
+
105
+ // getImageUrl
106
+ router.get('/getImageUrl', context.getImageUrl);
107
+
108
+ // getQQLoginQr
109
+ router.get('/getQQLoginQr', context.getQQLoginQr);
110
+ // @deprecated Use /getQQLoginQr instead
111
+ router.get('/user/getQQLoginQr', context.getQQLoginQr);
112
+ router.post('/checkQQLoginQr', context.checkQQLoginQr);
113
+ // @deprecated Use POST /checkQQLoginQr instead
114
+ router.post('/user/checkQQLoginQr', context.checkQQLoginQr);
115
+
116
+ module.exports = router;