Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
╰☆╯
NeteaseCloudMusicApi
提交
cc2783a2
N
NeteaseCloudMusicApi
项目概览
╰☆╯
/
NeteaseCloudMusicApi
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
N
NeteaseCloudMusicApi
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
cc2783a2
编写于
5月 31, 2018
作者:
D
dds_feng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
简化路由导出方式
上级
f34dce37
变更
94
隐藏空白更改
内联
并排
Showing
94 changed file
with
851 addition
and
1348 deletion
+851
-1348
app.js
app.js
+5
-1
router/album.js
router/album.js
+12
-17
router/artist_album.js
router/artist_album.js
+11
-16
router/artist_desc.js
router/artist_desc.js
+10
-16
router/artist_list.js
router/artist_list.js
+3
-8
router/artist_mv.js
router/artist_mv.js
+10
-16
router/artist_sub.js
router/artist_sub.js
+3
-8
router/artist_sublist.js
router/artist_sublist.js
+3
-8
router/artist_unsub.js
router/artist_unsub.js
+3
-8
router/artists.js
router/artists.js
+3
-8
router/banner.js
router/banner.js
+2
-8
router/check_music.js
router/check_music.js
+14
-20
router/comment_album.js
router/comment_album.js
+11
-17
router/comment_dj.js
router/comment_dj.js
+11
-17
router/comment_like.js
router/comment_like.js
+21
-26
router/comment_music.js
router/comment_music.js
+2
-8
router/comment_mv.js
router/comment_mv.js
+11
-17
router/comment_playlist.js
router/comment_playlist.js
+11
-17
router/daily_signin.js
router/daily_signin.js
+11
-17
router/dj_catelist.js
router/dj_catelist.js
+11
-17
router/dj_detail.js
router/dj_detail.js
+13
-18
router/dj_hot.js
router/dj_hot.js
+11
-17
router/dj_program.js
router/dj_program.js
+3
-8
router/dj_program_detail.js
router/dj_program_detail.js
+11
-17
router/dj_recommend.js
router/dj_recommend.js
+12
-17
router/dj_recommend_type.js
router/dj_recommend_type.js
+12
-17
router/dj_sub.js
router/dj_sub.js
+11
-17
router/dj_sublist.js
router/dj_sublist.js
+2
-8
router/event.js
router/event.js
+11
-16
router/fm_trash.js
router/fm_trash.js
+13
-18
router/follow.js
router/follow.js
+12
-18
router/like.js
router/like.js
+14
-19
router/likelist.js
router/likelist.js
+10
-16
router/logWeb.js
router/logWeb.js
+11
-16
router/login.js
router/login.js
+23
-26
router/loginCellphone.js
router/loginCellphone.js
+3
-7
router/login_refresh.js
router/login_refresh.js
+13
-18
router/lyric.js
router/lyric.js
+12
-17
router/musicUrl.js
router/musicUrl.js
+15
-20
router/mv.js
router/mv.js
+11
-16
router/mv_first.js
router/mv_first.js
+10
-15
router/mv_url.js
router/mv_url.js
+11
-17
router/personal_fm.js
router/personal_fm.js
+11
-16
router/personalized.js
router/personalized.js
+3
-8
router/personalized_djprogram.js
router/personalized_djprogram.js
+11
-16
router/personalized_mv.js
router/personalized_mv.js
+11
-16
router/personalized_newsong.js
router/personalized_newsong.js
+12
-17
router/personalized_privatecontent.js
router/personalized_privatecontent.js
+11
-16
router/playlist_catlist.js
router/playlist_catlist.js
+12
-17
router/playlist_create.js
router/playlist_create.js
+2
-8
router/playlist_detail.js
router/playlist_detail.js
+3
-9
router/playlist_hot.js
router/playlist_hot.js
+11
-16
router/playlist_subscribe.js
router/playlist_subscribe.js
+2
-8
router/playlist_tracks.js
router/playlist_tracks.js
+2
-7
router/playlist_update.js
router/playlist_update.js
+2
-8
router/program_recommend.js
router/program_recommend.js
+12
-17
router/recommend_dislike.js
router/recommend_dislike.js
+11
-16
router/recommend_resource.js
router/recommend_resource.js
+11
-16
router/recommend_songs.js
router/recommend_songs.js
+11
-16
router/resource_like.js
router/resource_like.js
+11
-17
router/search.js
router/search.js
+3
-8
router/search_hot.js
router/search_hot.js
+3
-8
router/search_multimatch.js
router/search_multimatch.js
+13
-18
router/search_suggest.js
router/search_suggest.js
+13
-18
router/send_playlist.js
router/send_playlist.js
+2
-8
router/send_text.js
router/send_text.js
+2
-8
router/simi_artist.js
router/simi_artist.js
+10
-16
router/simi_mv.js
router/simi_mv.js
+10
-15
router/simi_playlist.js
router/simi_playlist.js
+3
-8
router/simi_song.js
router/simi_song.js
+3
-8
router/simi_user.js
router/simi_user.js
+3
-8
router/song_detail.js
router/song_detail.js
+15
-20
router/top_album.js
router/top_album.js
+12
-16
router/top_artists.js
router/top_artists.js
+11
-16
router/top_list.js
router/top_list.js
+2
-8
router/top_mv.js
router/top_mv.js
+12
-18
router/top_playlist.js
router/top_playlist.js
+13
-19
router/top_playlist_highquality.js
router/top_playlist_highquality.js
+3
-8
router/top_song.js
router/top_song.js
+2
-8
router/toplist.js
router/toplist.js
+11
-17
router/toplist_artist.js
router/toplist_artist.js
+11
-17
router/toplist_detail.js
router/toplist_detail.js
+11
-17
router/user_audio.js
router/user_audio.js
+14
-19
router/user_cloud.js
router/user_cloud.js
+13
-18
router/user_cloud_search.js
router/user_cloud_search.js
+13
-18
router/user_detail.js
router/user_detail.js
+11
-17
router/user_dj.js
router/user_dj.js
+12
-18
router/user_event.js
router/user_event.js
+12
-17
router/user_followeds.js
router/user_followeds.js
+11
-17
router/user_follows.js
router/user_follows.js
+11
-17
router/user_playlist.js
router/user_playlist.js
+3
-8
router/user_record.js
router/user_record.js
+10
-16
router/user_subcount.js
router/user_subcount.js
+10
-16
router/user_update.js
router/user_update.js
+2
-8
未找到文件。
app.js
浏览文件 @
cc2783a2
...
...
@@ -40,6 +40,10 @@ const UnusualRouteFileMap = {
"
personal_fm.js
"
:
"
/personal_fm
"
};
// 简化 路由 导出方式, 由这里统一对 router 目录中导出的路由做包装, 路由实际对应的文件只专注做它该做的事情, 不用重复写样板代码
const
{
createWebAPIRequest
,
request
}
=
require
(
"
./util/util
"
);
const
Wrap
=
fn
=>
(
req
,
res
)
=>
fn
(
req
,
res
,
createWebAPIRequest
,
request
);
// 同步读取 router 目录中的js文件, 根据命名规则, 自动注册路由
fs
.
readdirSync
(
"
./router/
"
).
forEach
(
file
=>
{
if
(
/
\.
js$/i
.
test
(
file
)
===
false
)
{
...
...
@@ -61,7 +65,7 @@ fs.readdirSync("./router/").forEach(file => {
});
}
app
.
use
(
route
,
require
(
"
./router/
"
+
file
));
app
.
use
(
route
,
Wrap
(
require
(
"
./router/
"
+
file
)
));
});
const
port
=
process
.
env
.
PORT
||
3000
;
...
...
router/album.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 获取专辑内容
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
const
id
=
req
.
query
.
id
csrf_token
:
""
}
;
const
id
=
req
.
query
.
id
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/album/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/artist_album.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
id
// 获取歌手专辑列表
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/artist/albums/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/artist_desc.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
id
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
id
;
const
data
=
{
id
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/artist/introduction`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/artist_list.js
浏览文件 @
cc2783a2
//分类歌单
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 歌手分类
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
// categoryCode 取值
...
...
@@ -42,6 +39,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/artist_mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
id
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/artist/mvs`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/artist_sub.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 收藏歌手
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
artistId
:
`
${
req
.
query
.
id
}
`
...
...
@@ -18,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/artist_sublist.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 已关注歌手
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
...
...
@@ -21,6 +18,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/artist_unsub.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 取消收藏歌手
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
artistId
:
`
${
req
.
query
.
id
}
`
,
...
...
@@ -19,6 +16,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/artists.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 获取歌手单曲
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
id
;
...
...
@@ -21,6 +18,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/banner.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
request
=
require
(
"
request
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
options
=
{
url
:
"
http://music.163.com/discover
"
,
method
:
"
GET
"
,
...
...
@@ -25,6 +21,4 @@ router.get("/", (req, res) => {
}
}
});
});
module
.
exports
=
router
;
};
router/check_music.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
request
=
require
(
'
request
'
)
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
id
=
parseInt
(
req
.
query
.
id
)
const
br
=
parseInt
(
req
.
query
.
br
||
999000
)
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
'
)
:
''
csrf_token
:
""
}
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/song/enhance/player/url
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/song/enhance/player/url
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
if
(
JSON
.
parse
(
music_req
).
code
==
200
)
{
return
res
.
send
({
success
:
true
,
message
:
'
ok
'
})
return
res
.
send
({
success
:
true
,
message
:
"
ok
"
});
}
return
res
.
send
({
success
:
false
,
message
:
'
亲爱的,暂无版权
'
})
return
res
.
send
({
success
:
false
,
message
:
"
亲爱的,暂无版权
"
});
},
err
=>
{
res
.
status
(
502
).
send
(
'
fetch error
'
)
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
)
})
module
.
exports
=
router
);
};
router/comment_album.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
rid
=
req
.
query
.
id
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/resource/comments/R_AL_3_
${
rid
}
/?csrf_token=`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/comment_dj.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
rid
=
req
.
query
.
id
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/resource/comments/A_DJ_1_
${
rid
}
/?csrf_token=`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/comment_like.js
浏览文件 @
cc2783a2
//comment like
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
cid
=
req
.
query
.
cid
//评论 id
const
id
=
req
.
query
.
id
// 歌曲 id
//未知 api
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
cid
=
req
.
query
.
cid
;
//评论 id
const
id
=
req
.
query
.
id
;
// 歌曲 id
const
typeMap
=
{
0
:
'
R_SO_4_
'
,
//歌曲
1
:
'
R_MV_5_
'
,
//mv
2
:
'
A_PL_0_
'
,
//歌单
3
:
'
R_AL_3_
'
,
//专辑
4
:
'
A_DJ_1_
'
//电台
}
const
type
=
typeMap
[
req
.
query
.
type
]
0
:
"
R_SO_4_
"
,
//歌曲
1
:
"
R_MV_5_
"
,
//mv
2
:
"
A_PL_0_
"
,
//歌单
3
:
"
R_AL_3_
"
,
//专辑
4
:
"
A_DJ_1_
"
//电台
}
;
const
type
=
typeMap
[
req
.
query
.
type
]
;
const
data
=
{
threadId
:
`
${
type
}${
id
}
`
,
commentId
:
cid
,
csrf_token
:
''
}
const
action
=
req
.
query
.
t
==
1
?
'
like
'
:
'
unlike
'
csrf_token
:
""
}
;
const
action
=
req
.
query
.
t
==
1
?
"
like
"
:
"
unlike
"
;
const
url
=
`/weapi/v1/comment/
${
action
}
`
const
url
=
`/weapi/v1/comment/
${
action
}
`
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
url
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/comment_music.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
rid
=
req
.
query
.
id
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
...
...
@@ -22,6 +18,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
err
.
message
)
);
});
module
.
exports
=
router
;
};
router/comment_mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
rid
=
req
.
query
.
id
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/resource/comments/R_MV_5_
${
rid
}
/?csrf_token=`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/comment_playlist.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
rid
=
req
.
query
.
id
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/resource/comments/A_PL_0_
${
rid
}
/?csrf_token=`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/daily_signin.js
浏览文件 @
cc2783a2
// 签到
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
let
type
=
req
.
query
.
type
||
0
//0为安卓端签到 3点经验,1为网页签到,2点经验
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
:
''
,
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
'
,
"
music.163.com
"
,
"
/weapi/point/dailyTask
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_catelist.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/category/get
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/category/get
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_detail.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
rid
=
req
.
query
.
rid
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/get
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/get
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_hot.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
cat
:
req
.
query
.
type
,
cateId
:
req
.
query
.
type
,
...
...
@@ -12,19 +8,17 @@ router.get('/', (req, res) => {
category
:
req
.
query
.
type
,
limit
:
req
.
query
.
limit
,
offset
:
req
.
query
.
offset
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/hot/v1
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/hot/v1
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_program.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//dj主播 radio
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
rid
=
req
.
query
.
rid
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
...
...
@@ -23,6 +20,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/dj_program_detail.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
id
:
req
.
query
.
id
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/dj/program/detail
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/dj/program/detail
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_recommend.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 精选电台
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/recommend/v1
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/recommend/v1
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_recommend_type.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//精选电台-分类电台
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
cateId
:
req
.
query
.
type
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/recommend
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/recommend
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_sub.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
'
csrf_token
:
""
}
;
const
action
=
req
.
query
.
t
==
1
?
"
sub
"
:
"
unsub
"
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/djradio/
${
action
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/dj_sublist.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
...
...
@@ -21,6 +17,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/event.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//获取动态
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/event/get
'
,
'
POST
'
,
"
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
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/fm_trash.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
songId
=
req
.
query
.
id
const
alg
=
'
RT
'
const
time
=
req
.
query
.
time
||
25
//垃圾桶
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
:
''
,
csrf_token
:
""
,
songId
}
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/radio/trash/add?alg=
${
alg
}
&songId=
${
songId
}
&time=
${
time
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/follow.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
csrf_token
:
""
}
;
const
url
=
req
.
query
.
type
==
"
add
"
?
"
follow
"
:
"
delfollow
"
;
const
id
=
req
.
query
.
id
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/user/
${
url
}
/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/like.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
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
// 喜欢歌曲
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
:
''
,
csrf_token
:
""
,
trackId
,
like
}
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/radio/like?alg=
${
alg
}
&trackId=
${
trackId
}
&like=
${
like
}
&time=
${
time
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/likelist.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
uid
:
req
.
query
.
uid
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/song/like/get`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/logWeb.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 不明 api
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/feedback/weblog
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/feedback/weblog
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/login.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
crypto
=
require
(
'
crypto
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
const
crypto
=
require
(
"
crypto
"
);
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
email
=
req
.
query
.
email
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
md5sum
=
crypto
.
createHash
(
'
md5
'
)
md5sum
.
update
(
req
.
query
.
password
)
//邮箱登录
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
'
,
password
:
md5sum
.
digest
(
"
hex
"
),
rememberLogin
:
"
true
"
,
clientToken
:
'
1_jVUMqWEPke0/1/Vu56xCmJpo5vP1grjn_SOVVDzOc78w8OKLVZ2JH7IfkjSXqgfmh
'
}
console
.
log
(
email
,
req
.
query
.
password
)
"
1_jVUMqWEPke0/1/Vu56xCmJpo5vP1grjn_SOVVDzOc78w8OKLVZ2JH7IfkjSXqgfmh
"
}
;
console
.
log
(
email
,
req
.
query
.
password
)
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/login?csrf_token=
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/login?csrf_token=
"
,
"
POST
"
,
data
,
cookie
,
(
music_req
,
cookie
)
=>
{
// console.log(music_req)
cookie
=
cookie
&&
cookie
.
map
(
x
=>
x
.
replace
(
"
Domain=.music.163.com
"
,
""
))
cookie
=
cookie
&&
cookie
.
map
(
x
=>
x
.
replace
(
"
Domain=.music.163.com
"
,
""
));
res
.
set
({
'
Set-Cookie
'
:
cookie
})
res
.
send
(
music_req
)
"
Set-Cookie
"
:
cookie
})
;
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/loginCellphone.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
crypto
=
require
(
"
crypto
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//手机登录
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
phone
=
req
.
query
.
phone
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
md5sum
=
crypto
.
createHash
(
"
md5
"
);
...
...
@@ -32,6 +30,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/login_refresh.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//登录刷新
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/login/token/refresh`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
(
music_req
,
cookie
)
=>
{
res
.
set
({
'
Set-Cookie
'
:
cookie
})
res
.
send
(
music_req
)
"
Set-Cookie
"
:
cookie
})
;
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/lyric.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
data
=
{}
const
id
=
req
.
query
.
id
// 获取歌词
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
'
,
"
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
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/musicUrl.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
id
=
req
.
query
.
id
const
br
=
req
.
query
.
br
||
999000
// 获取音乐 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
'
)
:
''
csrf_token
:
""
}
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/song/enhance/player/url
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/song/enhance/player/url
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
setHeader
(
'
Content-Type
'
,
'
application/json
'
)
res
.
send
(
music_req
)
res
.
setHeader
(
"
Content-Type
"
,
"
application/json
"
);
res
.
send
(
music_req
)
;
},
err
=>
{
res
.
status
(
502
).
send
(
'
fetch error
'
)
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
)
})
module
.
exports
=
router
);
};
router/mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
mvid
=
req
.
query
.
mvid
//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
'
,
"
music.163.com
"
,
`/weapi/mv/detail`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/mv_first.js
浏览文件 @
cc2783a2
//最新mv
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
// type ALL, ZH,EA,KR,JP
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/mv/first
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/mv/first
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/mv_url.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
request
=
require
(
'
request
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
url
=
req
.
query
.
url
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
'
,
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
})
.
on
(
"
error
"
,
err
=>
{
res
.
send
({
err
})
;
})
.
pipe
(
res
)
})
module
.
exports
=
router
.
pipe
(
res
);
};
router/personal_fm.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 私人 FM
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/radio/get
'
,
'
POST
'
,
"
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
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/personalized.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//推荐歌单
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
limit
:
req
.
query
.
limit
||
30
,
...
...
@@ -22,6 +19,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/personalized_djprogram.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
data
=
{}
//推荐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
'
,
"
music.163.com
"
,
"
/weapi/personalized/djprogram
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/personalized_mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
data
=
{}
//推荐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
'
,
"
music.163.com
"
,
"
/weapi/personalized/mv
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/personalized_newsong.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//推荐新音乐
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
type
:
'
recommend
'
}
type
:
"
recommend
"
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/personalized/newsong
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/personalized/newsong
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/personalized_privatecontent.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
data
=
{}
//独家放送
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{};
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/personalized/privatecontent
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/personalized/privatecontent
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/playlist_catlist.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 全部歌单分类
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/playlist/catalogue
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/playlist/catalogue
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/playlist_create.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
name
:
req
.
query
.
name
,
...
...
@@ -19,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/playlist_detail.js
浏览文件 @
cc2783a2
const
http
=
require
(
"
http
"
);
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 获取歌单内列表
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
id
:
req
.
query
.
id
,
...
...
@@ -27,6 +23,4 @@ router.get("/", (req, res) => {
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
);
});
module
.
exports
=
router
;
};
router/playlist_hot.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
data
=
{}
// 热门歌单分类
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{};
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/playlist/hottags
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/playlist/hottags
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/playlist_subscribe.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
id
:
req
.
query
.
id
,
...
...
@@ -20,6 +16,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/playlist_tracks.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
//收藏单曲到歌单,从歌单删除歌曲 op=del,add;pid=歌单id,tracks=歌曲id
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
op
=
req
.
query
.
op
;
const
pid
=
req
.
query
.
pid
;
// const tracks = req.query.tracks.split(',')
...
...
@@ -27,6 +24,4 @@ router.get("/", (req, res) => {
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/playlist_update.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
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
||
""
;
...
...
@@ -28,6 +24,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/program_recommend.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//推荐节目
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
cateId
:
req
.
query
.
type
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/program/recommend/v1
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/program/recommend/v1
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/recommend_dislike.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//取消推荐
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/radio/get
'
,
'
POST
'
,
"
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
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/recommend_resource.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 获取每日推荐歌单
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/discovery/recommend/resource
'
,
'
POST
'
,
"
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
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/recommend_songs.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 获取每日推荐歌曲
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
offset
:
0
,
total
:
true
,
limit
:
20
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/discovery/recommend/songs
'
,
'
POST
'
,
"
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
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/resource_like.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
threadId
:
req
.
query
.
id
,
csrf_token
:
''
}
const
action
=
req
.
query
.
t
==
1
?
'
like
'
:
'
unlike
'
csrf_token
:
""
}
;
const
action
=
req
.
query
.
t
==
1
?
"
like
"
:
"
unlike
"
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/resource/
${
action
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/search.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 搜索
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
keywords
=
req
.
query
.
keywords
;
const
type
=
req
.
query
.
type
||
1
;
...
...
@@ -26,6 +23,4 @@ router.get("/", (req, res) => {
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/search_hot.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 热搜
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
type
:
1111
...
...
@@ -19,6 +16,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/search_multimatch.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//搜索 multimatch
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
,
csrf_token
:
""
,
type
:
req
.
query
.
type
||
1
,
s
:
req
.
query
.
keywords
||
''
}
s
:
req
.
query
.
keywords
||
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/search/suggest/multimatch
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/search/suggest/multimatch
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/search_suggest.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 搜索 suggest,搜索结果包含单曲,歌手,歌单,mv信息
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
,
s
:
req
.
query
.
keywords
||
''
}
csrf_token
:
""
,
s
:
req
.
query
.
keywords
||
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/search/suggest/web
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/search/suggest/web
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/send_playlist.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
user_ids
=
req
.
query
.
user_ids
;
const
data
=
{
...
...
@@ -21,6 +17,4 @@ router.get("/", (req, res) => {
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/send_text.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
// user_id must be [id]
const
user_ids
=
req
.
query
.
user_ids
;
...
...
@@ -22,6 +18,4 @@ router.get("/", (req, res) => {
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/simi_artist.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
id
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
id
;
const
data
=
{
artistid
:
id
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/discovery/simiArtist`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/simi_mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
//相似 mv
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
mvid
:
req
.
query
.
mvid
}
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/discovery/simiMV
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/discovery/simiMV
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/simi_playlist.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//simi ,相似歌单
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
songid
:
req
.
query
.
id
...
...
@@ -18,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/simi_song.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//simi ,相似歌曲
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
songid
:
req
.
query
.
id
...
...
@@ -18,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/simi_user.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//simi ,相似关注的用户
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
songid
:
req
.
query
.
id
...
...
@@ -18,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/song_detail.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
parseInt
(
req
.
query
.
ids
)
// 获取音乐详情
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
parseInt
(
req
.
query
.
ids
);
const
data
=
{
// "id": id,
c
:
JSON
.
stringify
([{
id
:
id
}]),
ids
:
'
[
'
+
id
+
'
]
'
,
csrf_token
:
''
}
console
.
log
(
data
)
ids
:
"
[
"
+
id
+
"
]
"
,
csrf_token
:
""
}
;
console
.
log
(
data
)
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v3/song/detail
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/v3/song/detail
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/top_album.js
浏览文件 @
cc2783a2
//最新mv
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
// 新碟上架 http://music.163.com/#/discover/album/
// type ALL, ZH,EA,KR,JP
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
||
50
,
area
:
req
.
query
.
type
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/album/new
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/album/new
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/top_artists.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
// 热门歌手 http://music.163.com/#/discover/artist/
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
||
50
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/artist/top`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/top_list.js
浏览文件 @
cc2783a2
...
...
@@ -24,11 +24,7 @@ const top_list_all = {
"
22
"
:
[
"
云音乐ACG音乐榜
"
,
"
71385702
"
],
"
23
"
:
[
"
云音乐嘻哈榜
"
,
"
991319590
"
]
};
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
idx
=
req
.
query
.
idx
;
const
id
=
top_list_all
[
idx
][
1
];
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
...
...
@@ -52,6 +48,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/top_mv.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
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
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/mv/toplist
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/mv/toplist
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
setHeader
(
'
Content-Type
'
,
'
application/json
'
)
res
.
send
(
music_req
)
res
.
setHeader
(
"
Content-Type
"
,
"
application/json
"
);
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/top_playlist.js
浏览文件 @
cc2783a2
//分类歌单
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
// order可为 'hot' 可为 'new'
const
data
=
{
cat
:
req
.
query
.
cat
||
'
全部
'
,
order
:
req
.
query
.
order
||
'
hot
'
,
cat
:
req
.
query
.
cat
||
"
全部
"
,
order
:
req
.
query
.
order
||
"
hot
"
,
offset
:
req
.
query
.
offset
||
0
,
total
:
req
.
query
.
total
?
'
true
'
:
'
false
'
,
total
:
req
.
query
.
total
?
"
true
"
:
"
false
"
,
limit
:
req
.
query
.
limit
||
50
}
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/playlist/list
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/playlist/list
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/top_playlist_highquality.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
//精品歌单
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
cat
:
req
.
query
.
cat
||
"
全部
"
,
...
...
@@ -21,6 +18,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/top_song.js
浏览文件 @
cc2783a2
//暂时废弃
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
""
...
...
@@ -19,6 +15,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/toplist.js
浏览文件 @
cc2783a2
// 排行榜
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/toplist
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/toplist
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/toplist_artist.js
浏览文件 @
cc2783a2
//歌手榜
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
type
:
req
.
query
.
type
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/eapi/toplist/artist?params=B5CAE4715306477C2EFA74D383640F01BF227BF8E889F80E2E2A442958463A7E589CC99878CFCE88D165B64712332AF39EC61B7E68903B2F9F079E8D1AB99FC61049A6D5B97AF8E6FFE8DA16ED540D2CFA80205B889ACA39F8B05AE593FDF5A094F118FF4600C2025094ECF6EB58F6D424B7A97B21A8C1D7CF0609AF2FBE9FDD88826E1667C889757BA920684C5C425FF01B5514AF1EB08AB7D298DB4D65187829E315F9FFBBEB43C2AE3DC21222B31CEC6FF337957AC122FBCB3E793FC1960151B0BDEBB1565BFD835E7A7D6A2D034A5591070D42C32DA4B69E0061C46D61239221A1C64EF676D891B44D7B855E27C82A7EB376F0B0C27952F2006E302B47DA1DE86C3488D53FD98ED9FDC6AA341DF0ECF92BA2E8F77E41811BF9447973C5C34FFED13E28AC544347F9E6ADF4B0008C371FC41C4490D3C9E1A225791D2170326231C40662633AA93D5CEF9AABC777AF268A4B13C560157339478DFAD5D910C966B43E1F017410DBF06D189E2BD6D0CD2682F343A83994E66CA73B5E2A67A122842BF945F2B434CBDE4C5A589A3A90F70DF1A8B63E7BAFBEB624956C62CFB1114AB841379541E5BB4625F2C28CAEA6A67E77A7EEAA1149D9D0F7E190D3A3408DF88B62FBF27996ABC925A93E5A67B4B0D1D931214BB07064F2BA4DCBA2E548E5A110E9B992C21E3930EB488172929C02C06D76BB193EF923D1906E0A0C4D75F5EB909AE77B0A2E55539A182D0B2533C654F2C90A038406B8850BFC022639F2B3FB7EDF40FD74AEA0B9119E9987D2909C01C587794F53459DB8EE83AA8D15FBEAC71EB3A00D8E40E78FE9A9A4068495D9257B39D8F825086F391FD5E7A48AACA96BC261E334A1929C81633234A0B22C573AEAD05BC8B4216283ACFD9E022950AEC812F554B913B4457FDF68AA2CC5E476922C2670D49154BC1DEB6D464F60DBFAD2BB4144762CD3721F52D42FDAE56DB9C529EDB6FB946CD725B3E2EA2AFDCF3F759D384B4F7F75AAA6F01F8093C8A140B3B388FF57272A6A7E10274290A79CDCA69E37BC066CE8CCD5B4BB4E12DA841B
'
,
'
POST
'
,
"
music.163.com
"
,
"
/eapi/toplist/artist?params=B5CAE4715306477C2EFA74D383640F01BF227BF8E889F80E2E2A442958463A7E589CC99878CFCE88D165B64712332AF39EC61B7E68903B2F9F079E8D1AB99FC61049A6D5B97AF8E6FFE8DA16ED540D2CFA80205B889ACA39F8B05AE593FDF5A094F118FF4600C2025094ECF6EB58F6D424B7A97B21A8C1D7CF0609AF2FBE9FDD88826E1667C889757BA920684C5C425FF01B5514AF1EB08AB7D298DB4D65187829E315F9FFBBEB43C2AE3DC21222B31CEC6FF337957AC122FBCB3E793FC1960151B0BDEBB1565BFD835E7A7D6A2D034A5591070D42C32DA4B69E0061C46D61239221A1C64EF676D891B44D7B855E27C82A7EB376F0B0C27952F2006E302B47DA1DE86C3488D53FD98ED9FDC6AA341DF0ECF92BA2E8F77E41811BF9447973C5C34FFED13E28AC544347F9E6ADF4B0008C371FC41C4490D3C9E1A225791D2170326231C40662633AA93D5CEF9AABC777AF268A4B13C560157339478DFAD5D910C966B43E1F017410DBF06D189E2BD6D0CD2682F343A83994E66CA73B5E2A67A122842BF945F2B434CBDE4C5A589A3A90F70DF1A8B63E7BAFBEB624956C62CFB1114AB841379541E5BB4625F2C28CAEA6A67E77A7EEAA1149D9D0F7E190D3A3408DF88B62FBF27996ABC925A93E5A67B4B0D1D931214BB07064F2BA4DCBA2E548E5A110E9B992C21E3930EB488172929C02C06D76BB193EF923D1906E0A0C4D75F5EB909AE77B0A2E55539A182D0B2533C654F2C90A038406B8850BFC022639F2B3FB7EDF40FD74AEA0B9119E9987D2909C01C587794F53459DB8EE83AA8D15FBEAC71EB3A00D8E40E78FE9A9A4068495D9257B39D8F825086F391FD5E7A48AACA96BC261E334A1929C81633234A0B22C573AEAD05BC8B4216283ACFD9E022950AEC812F554B913B4457FDF68AA2CC5E476922C2670D49154BC1DEB6D464F60DBFAD2BB4144762CD3721F52D42FDAE56DB9C529EDB6FB946CD725B3E2EA2AFDCF3F759D384B4F7F75AAA6F01F8093C8A140B3B388FF57272A6A7E10274290A79CDCA69E37BC066CE8CCD5B4BB4E12DA841B
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/toplist_detail.js
浏览文件 @
cc2783a2
// 排行榜详情
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
id
:
req
.
query
.
id
,
limit
:
20
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/toplist/detail
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/toplist/detail
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_audio.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
// 获取用户电台
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
data
=
{
userId
:
req
.
query
.
uid
,
csrf_token
:
''
}
console
.
log
(
data
)
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
csrf_token
:
""
}
;
console
.
log
(
data
)
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/djradio/get/byuser
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/djradio/get/byuser
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
setHeader
(
'
Content-Type
'
,
'
application/json
'
)
res
.
send
(
music_req
)
res
.
setHeader
(
"
Content-Type
"
,
"
application/json
"
);
res
.
send
(
music_req
)
;
},
err
=>
{
res
.
status
(
502
).
send
(
'
fetch error
'
)
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
)
})
module
.
exports
=
router
);
};
router/user_cloud.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
//云盘数据
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
data
=
{
limit
:
req
.
query
.
limit
||
10
,
offset
:
req
.
query
.
offset
||
0
,
csrf_token
:
''
}
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
csrf_token
:
""
}
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/cloud/get
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/v1/cloud/get
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
setHeader
(
'
Content-Type
'
,
'
application/json
'
)
res
.
send
(
music_req
)
res
.
setHeader
(
"
Content-Type
"
,
"
application/json
"
);
res
.
send
(
music_req
)
;
},
err
=>
{
res
.
status
(
502
).
send
(
'
fetch error
'
)
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
)
})
module
.
exports
=
router
);
};
router/user_cloud_search.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
//云盘数据详情? 暂时不要使用
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
data
=
{
byids
:
req
.
query
.
id
,
id
:
req
.
query
.
id
,
csrf_token
:
''
}
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
csrf_token
:
""
}
;
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/v1/cloud/get/byids
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/v1/cloud/get/byids
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
setHeader
(
'
Content-Type
'
,
'
application/json
'
)
res
.
send
(
music_req
)
res
.
setHeader
(
"
Content-Type
"
,
"
application/json
"
);
res
.
send
(
music_req
)
;
},
err
=>
{
res
.
status
(
502
).
send
(
'
fetch error
'
)
res
.
status
(
502
).
send
(
"
fetch error
"
);
}
)
})
module
.
exports
=
router
);
};
router/user_detail.js
浏览文件 @
cc2783a2
// 用户详情
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
uid
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
uid
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/v1/user/detail/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_dj.js
浏览文件 @
cc2783a2
// 用户电台
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
uid
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
uid
;
const
data
=
{
offset
:
req
.
query
.
offset
||
'
0
'
,
offset
:
req
.
query
.
offset
||
"
0
"
,
limit
:
req
.
query
.
limit
||
30
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/dj/program/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_event.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
uid
//用户动态
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
uid
;
const
data
=
{
time
:
-
1
,
getcounts
:
true
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/event/get/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_followeds.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
userId
:
req
.
query
.
uid
,
offset
:
req
.
query
.
offset
||
'
0
'
,
offset
:
req
.
query
.
offset
||
"
0
"
,
limit
:
req
.
query
.
limit
||
30
,
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/user/getfolloweds/`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_follows.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
const
id
=
req
.
query
.
uid
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
id
=
req
.
query
.
uid
;
const
data
=
{
offset
:
req
.
query
.
offset
||
'
0
'
,
offset
:
req
.
query
.
offset
||
"
0
"
,
limit
:
req
.
query
.
limit
||
30
,
order
:
true
}
}
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
`/weapi/user/getfollows/
${
id
}
`
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
{
res
.
send
(
music_req
)
res
.
send
(
music_req
)
;
},
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_playlist.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
// 获取用户歌单
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
offset
:
req
.
query
.
offset
||
0
,
...
...
@@ -22,6 +19,4 @@ router.get("/", (req, res) => {
},
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
router/user_record.js
浏览文件 @
cc2783a2
//播放记录
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
// type=1时只返回weekData, type=0时返回allData
const
data
=
{
type
:
req
.
query
.
type
||
0
,
uid
:
req
.
query
.
uid
,
//用户 id,
csrf_token
:
''
}
const
action
=
`/weapi/v1/play/record`
csrf_token
:
""
}
;
const
action
=
`/weapi/v1/play/record`
;
createWebAPIRequest
(
'
music.163.com
'
,
"
music.163.com
"
,
action
,
'
POST
'
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_subcount.js
浏览文件 @
cc2783a2
const
express
=
require
(
'
express
'
)
const
router
=
express
()
const
{
createWebAPIRequest
}
=
require
(
'
../util/util
'
)
router
.
get
(
'
/
'
,
(
req
,
res
)
=>
{
const
cookie
=
req
.
get
(
'
Cookie
'
)
?
req
.
get
(
'
Cookie
'
)
:
''
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
const
data
=
{
csrf_token
:
''
}
csrf_token
:
""
}
;
createWebAPIRequest
(
'
music.163.com
'
,
'
/weapi/subcount
'
,
'
POST
'
,
"
music.163.com
"
,
"
/weapi/subcount
"
,
"
POST
"
,
data
,
cookie
,
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
'
fetch error
'
)
)
})
module
.
exports
=
router
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
};
router/user_update.js
浏览文件 @
cc2783a2
const
express
=
require
(
"
express
"
);
const
router
=
express
();
const
{
createWebAPIRequest
}
=
require
(
"
../util/util
"
);
router
.
get
(
"
/
"
,
(
req
,
res
)
=>
{
module
.
exports
=
(
req
,
res
,
createWebAPIRequest
,
request
)
=>
{
const
cookie
=
req
.
get
(
"
Cookie
"
)
?
req
.
get
(
"
Cookie
"
)
:
""
;
// 暂时不提供更换头像接口
// gender为0表示保密,1为男性,2为女性
...
...
@@ -28,6 +24,4 @@ router.get("/", (req, res) => {
music_req
=>
res
.
send
(
music_req
),
err
=>
res
.
status
(
502
).
send
(
"
fetch error
"
)
);
});
module
.
exports
=
router
;
};
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录