From c2bbbcb2e9adfb07788d310ecdb9b9bc4e6117d9 Mon Sep 17 00:00:00 2001 From: overwriter <9856mmm@gmail.com> Date: Mon, 24 Jun 2024 00:02:42 +0800 Subject: [PATCH 1/5] =?UTF-8?q?refactor:=20=E6=8E=A5=E5=8F=A3=E5=8A=A0?= =?UTF-8?q?=E5=AF=86=E7=94=B1=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=E6=8E=A7?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QCloudMusicApi/module.cpp | 304 +++++++++++++------------------- QCloudMusicApi/util/config.h | 7 + QCloudMusicApi/util/request.cpp | 101 +++++++---- QCloudMusicApi/util/request.h | 2 +- 4 files changed, 196 insertions(+), 218 deletions(-) diff --git a/QCloudMusicApi/module.cpp b/QCloudMusicApi/module.cpp index be73470..a98a4bc 100644 --- a/QCloudMusicApi/module.cpp +++ b/QCloudMusicApi/module.cpp @@ -55,11 +55,10 @@ QVariantMap Api::activate_init_profile(QVariantMap query) { }; return request( POST, - "https://music.163.com/eapi/activate/initProfile", + "/api/activate/initProfile", data, { - _EAPI, - { "url", "/api/activate/initProfile" } + _API, } ); } @@ -88,11 +87,10 @@ QVariantMap Api::aidj_content_rcmd(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/aidj/content/rcmd/info", + "/api/aidj/content/rcmd/info", data, { - _EAPI, - { "url", "/api/aidj/content/rcmd/info" } + _API, } ); } @@ -107,7 +105,7 @@ QVariantMap Api::album_detail_dynamic(QVariantMap query) { "https://music.163.com/api/album/detail/dynamic", data, { - _WEAPI + _API } ); } @@ -201,11 +199,10 @@ QVariantMap Api::album_privilege(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/album/privilege", + "/api/album/privilege", data, { - _EAPI, - { "url", "/api/album/privilege" } + _API, } ); } @@ -311,13 +308,12 @@ QVariantMap Api::artist_detail_dynamic(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/artist/detail/dynamic", + "/api/artist/detail/dynamic", data, { - _EAPI, - { "url", "/api/artist/detail/dynamic" } + _API, } - ); + ); } // 歌手详情 @@ -629,11 +625,10 @@ QVariantMap Api::batch(QVariantMap query) { } return request( POST, - "https://music.163.com/eapi/batch", + "/api/batch", data, { - _EAPI, - { "url", "/api/batch" } + _API, } ); } @@ -650,7 +645,7 @@ QVariantMap Api::banner(QVariantMap query) { const QString type = typeMap.value(type0, "pc"); return request( POST, - "https://music.163.com/api/v2/banner/get", + "/api/v2/banner/get", { { "clientType", type } }, @@ -717,11 +712,10 @@ QVariantMap Api::cellphone_existence_check(QVariantMap query) { }; return request( POST, - "https://music.163.com/eapi/cellphone/existence/check", + "/api/cellphone/existence/check", data, { - _EAPI, - { "url", "/api/cellphone/existence/check" } + _API, } ); } @@ -919,11 +913,10 @@ QVariantMap Api::cloudsearch(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/cloudsearch/pc", + "/api/cloudsearch/pc", data, { - _EAPI, - { "url", "/api/cloudsearch/pc" } + _API, } ); } @@ -1046,7 +1039,7 @@ QVariantMap Api::comment_hug_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v2/resource/comments/hug/list", + "/api/v2/resource/comments/hug/list", data, { _API @@ -1161,11 +1154,10 @@ QVariantMap Api::comment_new(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v2/resource/comments", + "/api/v2/resource/comments", data, { - _EAPI, - { "url", "/api/v2/resource/comments" } + _API, } ); } @@ -1252,11 +1244,10 @@ QVariantMap Api::countries_code_list(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface3.music.163.com/eapi/lbs/countries/v1", + "/api/lbs/countries/v1", data, { - _EAPI, - { "url", "/api/lbs/countries/v1" } + _API, } ); } @@ -1266,11 +1257,10 @@ QVariantMap Api::creator_authinfo_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface.music.163.com/weapi/user/creator/authinfo/get", + "/api/user/creator/authinfo/get", data, { - _EAPI, - { "url", "/api/user/creator/authinfo/get" } + _API, } ); } @@ -1871,11 +1861,10 @@ QVariantMap Api::fanscenter_basicinfo_age_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface.music.163.com/weapi/fanscenter/basicinfo/age/get", + "/api/fanscenter/basicinfo/age/get", data, { - _EAPI, - { "url", "/api/fanscenter/basicinfo/age/get" } + _API, } ); } @@ -1885,11 +1874,10 @@ QVariantMap Api::fanscenter_basicinfo_gender_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface.music.163.com/weapi/fanscenter/basicinfo/gender/get", + "/api/fanscenter/basicinfo/gender/get", data, { - _EAPI, - { "url", "/api/fanscenter/basicinfo/gender/get" } + _API, } ); } @@ -1899,11 +1887,10 @@ QVariantMap Api::fanscenter_basicinfo_province_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface.music.163.com/weapi/fanscenter/basicinfo/province/get", + "/api/fanscenter/basicinfo/province/get", data, { - _EAPI, - { "url", "/api/fanscenter/basicinfo/province/get" } + _API, } ); } @@ -1913,11 +1900,10 @@ QVariantMap Api::fanscenter_overview_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://interface.music.163.com/weapi/fanscenter/overview/get", + "/api/fanscenter/overview/get", data, { - _EAPI, - { "url", "/api/fanscenter/overview/get" } + _API, } ); } @@ -1931,11 +1917,10 @@ QVariantMap Api::fanscenter_trend_list(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/fanscenter/trend/list", + "/api/fanscenter/trend/list", data, { - _EAPI, - { "url", "/api/fanscenter/trend/list" } + _API, } ); } @@ -2053,11 +2038,10 @@ QVariantMap Api::homepage_dragon_ball(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/eapi/homepage/dragon/ball/static", + "/api/homepage/dragon/ball/static", data, { - _EAPI, - { "url", "/api/homepage/dragon/ball/static"} + _API, } ); } @@ -2089,7 +2073,7 @@ QVariantMap Api::hug_comment(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v2/resource/comments/hug/listener", + "/api/v2/resource/comments/hug/listener", data, { _API @@ -2144,11 +2128,10 @@ QVariantMap Api::listentogether_accept(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/play/invitation/accept", + "/api/listen/together/play/invitation/accept", data, { - _EAPI, - { "url", "/api/listen/together/play/invitation/accept" } + _API, } ); } @@ -2160,11 +2143,10 @@ QVariantMap Api::listentogether_end(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/end/v2", + "/api/listen/together/end/v2", data, { - _EAPI, - { "url", "/api/listen/together/end/v2" } + _API, } ); } @@ -2179,11 +2161,10 @@ QVariantMap Api::listentogether_heatbeat(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/heartbeat", + "/api/listen/together/heartbeat", data, { - _EAPI, - { "url", "/api/listen/together/heartbeat" } + _API, } ); } @@ -2205,11 +2186,10 @@ QVariantMap Api::listentogether_play_command(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/play/command/report", + "/api/listen/together/play/command/report", data, { - _EAPI, - { "url", "/api/listen/together/play/command/report" } + _API, } ); } @@ -2221,11 +2201,10 @@ QVariantMap Api::listentogether_room_check(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/room/check", + "/api/listen/together/room/check", data, { - _EAPI, - { "url", "/api/listen/together/room/check" } + _API, } ); } @@ -2237,11 +2216,10 @@ QVariantMap Api::listentogether_room_create(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/room/create", + "/api/listen/together/room/create", data, { - _EAPI, - { "url", "/api/listen/together/room/create" } + _API, } ); } @@ -2284,11 +2262,10 @@ QVariantMap Api::listentogether_sync_list_command(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/sync/list/command/report", + "/api/listen/together/sync/list/command/report", data, { - _EAPI, - { "url", "/api/listen/together/sync/list/command/report" } + _API, } ); } @@ -2300,11 +2277,10 @@ QVariantMap Api::listentogether_sync_playlist_get(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/eapi/listen/together/sync/playlist/get", + "/api/listen/together/sync/playlist/get", data, { - _EAPI, - { "url", "/api/listen/together/sync/playlist/get" } + _API, } ); } @@ -2433,10 +2409,10 @@ QVariantMap Api::login_refresh(QVariantMap query) { QVariantMap Api::login_status(QVariantMap query) { QVariantMap result = request( POST, - "https://music.163.com/weapi/w/nuser/account/get", + "/api/w/nuser/account/get", {}, { - _WEAPI + _API } ); if (result["body"].toMap()["code"] == 200) { @@ -2483,11 +2459,10 @@ QVariantMap Api::lyric_new(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/song/lyric/v1", + "/api/song/lyric/v1", data, { - _EAPI, - { "url", "/api/song/lyric/v1" } + _API, } ); } @@ -2507,7 +2482,7 @@ QVariantMap Api::lyric(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/song/lyric?_nmclfl=1", + "/api/song/lyric?_nmclfl=1", data, { _API @@ -2526,11 +2501,10 @@ QVariantMap Api::mlog_music_rcmd(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/mlog/rcmd/feed/list", + "/api/mlog/rcmd/feed/list", data, { - _EAPI, - { "url", "/api/mlog/rcmd/feed/list" }, + _API, } ); } @@ -2964,10 +2938,10 @@ QVariantMap Api::personalized(QVariantMap query) { QVariantMap Api::pl_count(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/pl/count", + "/api/pl/count", {}, { - _WEAPI + _API } ); } @@ -3064,11 +3038,10 @@ QVariantMap Api::playlist_desc_update(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/playlist/desc/update", + "/api/playlist/desc/update", data, { - _EAPI, - { "url", "/api/playlist/desc/update" }, + _API, } ); } @@ -3082,7 +3055,7 @@ QVariantMap Api::playlist_detail_dynamic(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/detail/dynamic", + "/api/playlist/detail/dynamic", data, { _API @@ -3099,7 +3072,7 @@ QVariantMap Api::playlist_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v6/playlist/detail", + "/api/v6/playlist/detail", data, { _API @@ -3156,11 +3129,10 @@ QVariantMap Api::playlist_name_update(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/playlist/update/name", + "/api/playlist/update/name", data, { - _EAPI, - { "url", "/api/playlist/update/name" }, + _API, } ); } @@ -3192,11 +3164,10 @@ QVariantMap Api::playlist_privacy(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/playlist/update/privacy", + "/api/playlist/update/privacy", data, { - _EAPI, - { "url", "/api/playlist/update/privacy" }, + _API, } ); } @@ -3242,11 +3213,10 @@ QVariantMap Api::playlist_tags_update(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/playlist/tags/update", + "/api/playlist/tags/update", data, { - _EAPI, - { "url", "/api/playlist/tags/update" }, + _API, } ); } @@ -3296,7 +3266,7 @@ QVariantMap Api::playlist_track_all(QVariantMap query) { auto res = request( POST, - "https://music.163.com/api/v6/playlist/detail", + "/api/v6/playlist/detail", data, { _API @@ -3314,10 +3284,10 @@ QVariantMap Api::playlist_track_all(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v3/song/detail", + "/api/v3/song/detail", idsData, { - _WEAPI + _API } ); } @@ -3477,11 +3447,10 @@ QVariantMap Api::playmode_song_vector(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/playmode/song/vector/get", + "/api/playmode/song/vector/get", data, { - _EAPI, - { "url", "/api/playmode/song/vector/get" }, + _API, } ); } @@ -3525,13 +3494,12 @@ QVariantMap Api::rebind(QVariantMap query) { QVariantMap Api::recent_listen_list(QVariantMap query) { return request( POST, - "https://interface.music.163.com/eapi/pc/recent/listen/list", + "/api/pc/recent/listen/list", {}, { - _EAPI, - { "url", "/api/pc/recent/listen/list" } + _API, } - ); + ); } // 每日推荐歌单 @@ -3854,11 +3822,10 @@ QVariantMap Api::scrobble(QVariantMap query) { QVariantMap Api::search_default(QVariantMap query) { return request( POST, - "https://interface3.music.163.com/eapi/search/defaultkeyword/get", + "/api/search/defaultkeyword/get", {}, { - _EAPI, - { "url", "/api/search/defaultkeyword/get" }, + _API, } ); } @@ -3907,11 +3874,10 @@ QVariantMap Api::search_match(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/search/match/new", + "/api/search/match/new", data, { - _EAPI, - { "url", "/api/search/match/new" } + _API, } ); } @@ -3995,7 +3961,7 @@ QVariantMap Api::send_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/msg/private/send", + "/api/msg/private/send", data, { _API, @@ -4031,7 +3997,7 @@ QVariantMap Api::send_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/msg/private/send", + "/api/msg/private/send", data, { _API, @@ -4094,11 +4060,10 @@ QVariantMap Api::sheet_list(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/music/sheet/list/v1", + "/eapi/music/sheet/list/v1", data, { - _EAPI, - { "url", "/api/music/sheet/list/v1" }, + _API, } ); } @@ -4110,11 +4075,10 @@ QVariantMap Api::sheet_preview(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi//music/sheet/preview/info?id=" + query["id"].toString(), + "/api/music/sheet/preview/info?id=" + query["id"].toString(), data, { - _EAPI, - { "url", "/api//music/sheet/preview/info" }, // 我没写错! 他们就是这么请求的! + _API, } ); } @@ -4236,11 +4200,10 @@ QVariantMap Api::song_download_url(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/eapi/song/enhance/download/url", + "/api/song/enhance/download/url", data, { - _EAPI, - { "url", "/api/song/enhance/download/url" } + _API, } ); } @@ -4259,11 +4222,10 @@ QVariantMap Api::song_url_v1(QVariantMap query) { } return request( POST, - "https://interface.music.163.com/eapi/song/enhance/player/url/v1", + "/api/song/enhance/player/url/v1", data, { - _EAPI, - { "url", "/api/song/enhance/player/url/v1" } + _API, } ); } @@ -4277,11 +4239,10 @@ QVariantMap Api::song_url(QVariantMap query) { }; const auto res = request( POST, - "https://interface.music.163.com/eapi/song/enhance/player/url/v1", + "/api/song/enhance/player/url/v1", data, { - _EAPI, - { "url", "/api/song/enhance/player/url" }, + _API, } ); auto result = res["body"].toMap()["data"].toList(); @@ -4314,10 +4275,10 @@ QVariantMap Api::song_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v3/song/detail", + "/api/v3/song/detail", data, { - _WEAPI + _API } ); } @@ -4329,11 +4290,10 @@ QVariantMap Api::song_wiki_summary(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/music/wiki/home/song/get", + "/api/song/play/about/block/page", data, { - _EAPI, - { "url", "/api/song/play/about/block/page" } + _API, } ); } @@ -4350,11 +4310,10 @@ QVariantMap Api::starpick_comments_summary(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/homepage/block/page", + "/api/homepage/block/page", data, { - _EAPI, - { "url", "/api/homepage/block/page" } + _API, } ); } @@ -4366,11 +4325,10 @@ QVariantMap Api::song_music_detail(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/song/music/detail/get", + "/api/song/music/detail/get", data, { - _EAPI, - { "url", "/api/song/music/detail/get" } + _API, } ); } @@ -4416,11 +4374,10 @@ QVariantMap Api::song_red_count(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/song/red/count", + "/api/song/red/count", data, { - _EAPI, - { "url", "/api/song/red/count" } + _API, } ); } @@ -4544,11 +4501,10 @@ QVariantMap Api::summary_annual(QVariantMap query) { const QString key = QStringList{ "2017", "2018", "2019 " }.indexOf(query["year"].toString()) > -1 ? "userdata" : "data"; return request( POST, - "https://music.163.com/weapi/activity/summary/annual/" + query["year"].toString() + "/" + key, + "/api/activity/summary/annual/" + query["year"].toString() + "/" + key, data, { - _EAPI, - { "url", "/api/activity/summary/annual/" + query["year"].toString() + "/" + key } + _API, } ); } @@ -4558,11 +4514,10 @@ QVariantMap Api::threshold_detail_get(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/weapi/influencer/web/apply/threshold/detail/get", + "/api/influencer/web/apply/threshold/detail/get", data, { - _EAPI, - { "url", "/api/influencer/web/apply/threshold/detail/get" } + _API, } ); } @@ -4795,7 +4750,7 @@ QVariantMap Api::toplist_detail(QVariantMap query) { QVariantMap Api::toplist(QVariantMap query) { return request( POST, - "https://music.163.com/api/toplist", + "/api/toplist", {}, { _API @@ -4810,11 +4765,10 @@ QVariantMap Api::ugc_album_get(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/rep/ugc/album/get", + "/api/rep/ugc/album/get", data, { - _EAPI, - { "url", "/api/rep/ugc/album/get" } + _API, } ); } @@ -4826,11 +4780,10 @@ QVariantMap Api::ugc_artist_get(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/rep/ugc/artist/get", + "/api/rep/ugc/artist/get", data, { - _EAPI, - { "url", "/api/rep/ugc/artist/get" } + _API, } ); } @@ -4884,11 +4837,10 @@ QVariantMap Api::ugc_mv_get(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/rep/ugc/mv/get", + "/api/rep/ugc/mv/get", data, { - _EAPI, - { "url", "/api/rep/ugc/mv/get" } + _API, } ); } @@ -4900,11 +4852,10 @@ QVariantMap Api::ugc_song_get(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/rep/ugc/song/get", + "/api/rep/ugc/song/get", data, { - _EAPI, - { "url", "/api/rep/ugc/song/get" } + _API, } ); } @@ -4914,11 +4865,10 @@ QVariantMap Api::ugc_user_devote(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/weapi/rep/ugc/user/devote", + "/api/rep/ugc/user/devote", data, { - _EAPI, - { "url", "/api/rep/ugc/user/devote" } + _API, } ); } @@ -5068,7 +5018,7 @@ QVariantMap Api::user_event(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/event/get/" + query["uid"].toString(), + "/api/event/get/" + query["uid"].toString(), data, { _API @@ -5087,11 +5037,10 @@ QVariantMap Api::user_followeds(QVariantMap query) { }; return request( POST, - "https://music.163.com/eapi/user/getfolloweds/" + query["uid"].toString(), + "/api/user/getfolloweds/" + query["uid"].toString(), data, { - _EAPI, - { "url", "/api/user/getfolloweds" } + _API, } ); } @@ -5469,11 +5418,10 @@ QVariantMap Api::voice_lyric(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/voice/lyric/get?programId=" + query["id"].toString(), + "/api/voice/lyric/get?programId=" + query["id"].toString(), data, { - _EAPI, - { "url", "/api/voice/lyric/get" }, + _API, } ); } diff --git a/QCloudMusicApi/util/config.h b/QCloudMusicApi/util/config.h index a13928a..918af63 100644 --- a/QCloudMusicApi/util/config.h +++ b/QCloudMusicApi/util/config.h @@ -16,6 +16,13 @@ namespace QCloudMusicApi { { "6", "A_EV_2_" }, { "7", "A_DR_14_" } }; + static QVariantMap APP_CONF{ + { "apiDomain", "https://interface.music.163.com" }, + { "domain", "https://music.163.com" }, + { "encrypt", false }, + { "encryptResponse", false }, + { "newApiDomain", true }, + }; } } #endif // CONFIG_H diff --git a/QCloudMusicApi/util/request.cpp b/QCloudMusicApi/util/request.cpp index 187e772..19b3d68 100644 --- a/QCloudMusicApi/util/request.cpp +++ b/QCloudMusicApi/util/request.cpp @@ -21,6 +21,7 @@ #include "index.h" #include "request.h" #include "logger.h" +#include "config.h" QString anonymous_token; @@ -45,14 +46,14 @@ QString Request::chooseUserAgent(QString uaType) { } QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, - QString url, + QString uri, QVariantMap data, QVariantMap options) { DEBUG.noquote() << QJsonDocument::fromVariant( QVariantMap{ { "method", method }, - { "url", url }, + { "uri", uri }, { "data", data }, { "options", options} } @@ -69,7 +70,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, if (method == QNetworkAccessManager::PostOperation) { headers["Content-Type"] = "application/x-www-form-urlencoded"; } - if (url.contains("music.163.com")) { + if (uri.contains("music.163.com")) { headers["Referer"] = "https://music.163.com"; } QString ip = options.value("realIP", options.value("ip", "")).toString(); @@ -96,7 +97,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, { "os", options["cookie"].toMap().value("os", "ios") }, { "appver", options["cookie"].toMap().value("appver", cookie.value("os") != "pc" ? iosAppVersion : "") }, }); - if (url.indexOf("login") == -1) { + if (uri.indexOf("login") == -1) { auto cookie = options["cookie"].toMap(); cookie["NMTID"] = randomBytes().toHex(); options["cookie"] = cookie; @@ -133,40 +134,24 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, headers["Cookie"] = Index::cookieObjToString(cookie); } - if (options["crypto"] == "weapi") { - headers["User-Agent"] = options.value("ua", chooseUserAgent("pc")); - data["csrf_token"] = QRegularExpression("_csrf=([^;]+)").match(headers.value("Cookie", "").toString()).captured(1); - - data = Crypto::weapi(QJsonDocument::fromVariant(data)); - url = url.replace(QRegularExpression("\\w*api"), "weapi"); - } - else if (options["crypto"] == "linuxapi") { - data = Crypto::linuxapi(QJsonDocument::fromVariant(QVariantMap{ - { "method", method }, - { "url", url.replace(QRegularExpression("\\w*api"), "api") }, - { "params", data } - })); - headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36"; - url = "https://music.163.com/api/linux/forward"; - } - else if (options["crypto"] == "eapi") { + auto eapiEncrypt = [&]() { const QVariantMap cookie = options.value("cookie", QVariantMap()).toMap(); const QString csrfToken = cookie.value("__csrf", "").toString(); QVariantMap header{ - { "osver", cookie.value("osver", "17.4.1") }, //系统版本 - { "deviceId", cookie["deviceId"] }, - { "appver", cookie.value("appver", iosAppVersion) }, // app版本 - { "versioncode", cookie.value("versioncode", "140") }, //版本号 - { "mobilename", cookie.value("mobilename", "") }, //设备model - { "buildver", cookie.value("buildver", QString::number(QDateTime::currentDateTime().toMSecsSinceEpoch()).mid(0, 10)) }, - { "resolution", cookie.value("resolution", "1920x1080") }, //设备分辨率 - { "__csrf", csrfToken }, - { "os", cookie.value("os", "ios") }, - { "channel", cookie.value("channel", "") }, - { "requestId", QString::number(QDateTime::currentDateTime().toMSecsSinceEpoch()) - + "_" - + QString::number((int)(QRandomGenerator::global()->bounded(1.0) * 1000)).rightJustified(4, '0') - }, + { "osver", cookie.value("osver", "17.4.1") }, //系统版本 + { "deviceId", cookie["deviceId"] }, + { "appver", cookie.value("appver", iosAppVersion) }, // app版本 + { "versioncode", cookie.value("versioncode", "140") }, //版本号 + { "mobilename", cookie.value("mobilename", "") }, //设备model + { "buildver", cookie.value("buildver", QString::number(QDateTime::currentDateTime().toMSecsSinceEpoch()).mid(0, 10)) }, + { "resolution", cookie.value("resolution", "1920x1080") }, //设备分辨率 + { "__csrf", csrfToken }, + { "os", cookie.value("os", "ios") }, + { "channel", cookie.value("channel", "") }, + { "requestId", QString::number(QDateTime::currentDateTime().toMSecsSinceEpoch()) + + "_" + + QString::number((int)(QRandomGenerator::global()->bounded(1.0) * 1000)).rightJustified(4, '0') + }, }; if (cookie.contains("MUSIC_U")) header["MUSIC_U"] = cookie["MUSIC_U"]; if (cookie.contains("MUSIC_A")) header["MUSIC_A"] = cookie["MUSIC_A"]; @@ -182,7 +167,45 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, }(); data["header"] = header; data = Crypto::eapi(options["url"].toString(), QJsonDocument::fromVariant(data)); - url = url.replace(QRegularExpression("\\w*api"), "eapi"); + }; + + if (options["crypto"] == "weapi") { + headers["User-Agent"] = options.value("ua", chooseUserAgent("pc")); + data["csrf_token"] = QRegularExpression("_csrf=([^;]+)").match(headers.value("Cookie", "").toString()).captured(1); + + data = Crypto::weapi(QJsonDocument::fromVariant(data)); + uri = uri.replace(QRegularExpression("\\w*api"), "weapi"); + } + else if (options["crypto"] == "linuxapi") { + data = Crypto::linuxapi(QJsonDocument::fromVariant(QVariantMap{ + { "method", method }, + { "url", uri.replace(QRegularExpression("\\w*api"), "api") }, + { "params", data } + })); + headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36"; + uri = "https://music.163.com/api/linux/forward"; + } + else if (options["crypto"] == "eapi") { + eapiEncrypt(); + uri = uri.replace(QRegularExpression("\\w*api"), "eapi"); + } + else if (options["crypto"] == "api") { + auto getApiDomain = [&]() { + auto newApiDomain = Config::APP_CONF["newApiDomain"].toBool(); + auto domain = Config::APP_CONF["domain"].toString(); + if (newApiDomain) { + domain = domain.replace("//music", "//interface.music"); + } + return domain; + }; + if (Config::APP_CONF["encrypt"].toBool()) { + options["url"] = uri; + + eapiEncrypt(); + + uri = getApiDomain() + "/eapi/" + uri.mid(5); + } + else uri = Config::APP_CONF["apiDomain"].toString() + uri; } QNetworkProxy proxy = QNetworkProxy::NoProxy; @@ -201,14 +224,14 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, } QUrlQuery query; - query.setQuery(QUrl(url).query()); + query.setQuery(QUrl(uri).query()); for (auto i = data.constBegin(); i != data.constEnd(); ++i) { query.addQueryItem(i.key(), QUrl::toPercentEncoding(i.value().toString())); } DEBUG << "method" << method; - DEBUG << "url" << url; + DEBUG << "url" << uri; DEBUG << "data" << data; - QNetworkReply* reply = axios(method, url, data, headers, query.toString().toUtf8(), proxy); + QNetworkReply* reply = axios(method, uri, data, headers, query.toString().toUtf8(), proxy); reply->manager()->deleteLater(); QVariantMap answer{ diff --git a/QCloudMusicApi/util/request.h b/QCloudMusicApi/util/request.h index c47dace..09d6e17 100644 --- a/QCloudMusicApi/util/request.h +++ b/QCloudMusicApi/util/request.h @@ -15,7 +15,7 @@ namespace QCloudMusicApi { public: static QString chooseUserAgent(QString uaType); static QVariantMap createRequest(QNetworkAccessManager::Operation method, - QString url, + QString uri, QVariantMap data, QVariantMap options); From 9ab71bc5cacecab023d4294552f2afdd0670a932 Mon Sep 17 00:00:00 2001 From: overwriter <9856mmm@gmail.com> Date: Tue, 25 Jun 2024 20:47:55 +0800 Subject: [PATCH 2/5] =?UTF-8?q?refactor:=20=E8=BF=9B=E4=B8=80=E6=AD=A5?= =?UTF-8?q?=E5=B0=81=E8=A3=85option?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QCloudMusicApi/module.cpp | 301 +++++++++----------------------- QCloudMusicApi/util/request.cpp | 13 +- QCloudMusicApi/util/request.h | 2 + 3 files changed, 92 insertions(+), 224 deletions(-) diff --git a/QCloudMusicApi/module.cpp b/QCloudMusicApi/module.cpp index a98a4bc..cb711c8 100644 --- a/QCloudMusicApi/module.cpp +++ b/QCloudMusicApi/module.cpp @@ -29,21 +29,13 @@ { "crypto", "weapi" }, \ _PARAM \ -#define _EAPI \ -{ "crypto", "eapi" }, \ -_PARAM \ - -#define _API \ -{ "crypto", "api" }, \ -_PARAM \ - using Api = NeteaseCloudMusicApi; const static auto& request = QCloudMusicApi::Request::createRequest; const static auto& POST = QNetworkAccessManager::PostOperation; const static auto& GET = QNetworkAccessManager::GetOperation; const static auto& resourceTypeMap = QCloudMusicApi::Config::resourceTypeMap; - +using namespace QCloudMusicApi; NeteaseCloudMusicApi::NeteaseCloudMusicApi(QObject* parent) : QObject{ parent } {} @@ -57,9 +49,7 @@ QVariantMap Api::activate_init_profile(QVariantMap query) { POST, "/api/activate/initProfile", data, - { - _API, - } + Request::options(query) ); } @@ -89,9 +79,7 @@ QVariantMap Api::aidj_content_rcmd(QVariantMap query) { POST, "/api/aidj/content/rcmd/info", data, - { - _API, - } + Request::options(query) ); } @@ -102,11 +90,9 @@ QVariantMap Api::album_detail_dynamic(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/album/detail/dynamic", + "/api/album/detail/dynamic", data, - { - _API - } + Request::options(query) ); } @@ -172,11 +158,9 @@ QVariantMap Api::album_new(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/album/new", + "/api/album/new", data, - { - _WEAPI - } + Request::options(query) ); } @@ -201,9 +185,7 @@ QVariantMap Api::album_privilege(QVariantMap query) { POST, "/api/album/privilege", data, - { - _API, - } + Request::options(query) ); } @@ -310,9 +292,7 @@ QVariantMap Api::artist_detail_dynamic(QVariantMap query) { POST, "/api/artist/detail/dynamic", data, - { - _API, - } + Request::options(query) ); } @@ -627,9 +607,7 @@ QVariantMap Api::batch(QVariantMap query) { POST, "/api/batch", data, - { - _API, - } + Request::options(query) ); } @@ -649,9 +627,7 @@ QVariantMap Api::banner(QVariantMap query) { { { "clientType", type } }, - { - _API - } + Request::options(query) ); } @@ -714,9 +690,7 @@ QVariantMap Api::cellphone_existence_check(QVariantMap query) { POST, "/api/cellphone/existence/check", data, - { - _API, - } + Request::options(query) ); } @@ -915,9 +889,7 @@ QVariantMap Api::cloudsearch(QVariantMap query) { POST, "/api/cloudsearch/pc", data, - { - _API, - } + Request::options(query) ); } @@ -1041,9 +1013,7 @@ QVariantMap Api::comment_hug_list(QVariantMap query) { POST, "/api/v2/resource/comments/hug/list", data, - { - _API - } + Request::options(query) ); } @@ -1156,9 +1126,7 @@ QVariantMap Api::comment_new(QVariantMap query) { POST, "/api/v2/resource/comments", data, - { - _API, - } + Request::options(query) ); } @@ -1246,9 +1214,7 @@ QVariantMap Api::countries_code_list(QVariantMap query) { POST, "/api/lbs/countries/v1", data, - { - _API, - } + Request::options(query) ); } @@ -1259,9 +1225,7 @@ QVariantMap Api::creator_authinfo_get(QVariantMap query) { POST, "/api/user/creator/authinfo/get", data, - { - _API, - } + Request::options(query) ); } @@ -1863,9 +1827,7 @@ QVariantMap Api::fanscenter_basicinfo_age_get(QVariantMap query) { POST, "/api/fanscenter/basicinfo/age/get", data, - { - _API, - } + Request::options(query) ); } @@ -1876,9 +1838,7 @@ QVariantMap Api::fanscenter_basicinfo_gender_get(QVariantMap query) { POST, "/api/fanscenter/basicinfo/gender/get", data, - { - _API, - } + Request::options(query) ); } @@ -1889,9 +1849,7 @@ QVariantMap Api::fanscenter_basicinfo_province_get(QVariantMap query) { POST, "/api/fanscenter/basicinfo/province/get", data, - { - _API, - } + Request::options(query) ); } @@ -1902,9 +1860,7 @@ QVariantMap Api::fanscenter_overview_get(QVariantMap query) { POST, "/api/fanscenter/overview/get", data, - { - _API, - } + Request::options(query) ); } @@ -1919,9 +1875,7 @@ QVariantMap Api::fanscenter_trend_list(QVariantMap query) { POST, "/api/fanscenter/trend/list", data, - { - _API, - } + Request::options(query) ); } @@ -2040,9 +1994,7 @@ QVariantMap Api::homepage_dragon_ball(QVariantMap query) { POST, "/api/homepage/dragon/ball/static", data, - { - _API, - } + Request::options(query) ); } @@ -2075,9 +2027,7 @@ QVariantMap Api::hug_comment(QVariantMap query) { POST, "/api/v2/resource/comments/hug/listener", data, - { - _API - } + Request::options(query) ); } @@ -2130,9 +2080,7 @@ QVariantMap Api::listentogether_accept(QVariantMap query) { POST, "/api/listen/together/play/invitation/accept", data, - { - _API, - } + Request::options(query) ); } @@ -2145,9 +2093,7 @@ QVariantMap Api::listentogether_end(QVariantMap query) { POST, "/api/listen/together/end/v2", data, - { - _API, - } + Request::options(query) ); } @@ -2163,9 +2109,7 @@ QVariantMap Api::listentogether_heatbeat(QVariantMap query) { POST, "/api/listen/together/heartbeat", data, - { - _API, - } + Request::options(query) ); } @@ -2188,9 +2132,7 @@ QVariantMap Api::listentogether_play_command(QVariantMap query) { POST, "/api/listen/together/play/command/report", data, - { - _API, - } + Request::options(query) ); } @@ -2203,9 +2145,7 @@ QVariantMap Api::listentogether_room_check(QVariantMap query) { POST, "/api/listen/together/room/check", data, - { - _API, - } + Request::options(query) ); } @@ -2218,9 +2158,7 @@ QVariantMap Api::listentogether_room_create(QVariantMap query) { POST, "/api/listen/together/room/create", data, - { - _API, - } + Request::options(query) ); } @@ -2264,9 +2202,7 @@ QVariantMap Api::listentogether_sync_list_command(QVariantMap query) { POST, "/api/listen/together/sync/list/command/report", data, - { - _API, - } + Request::options(query) ); } @@ -2279,9 +2215,7 @@ QVariantMap Api::listentogether_sync_playlist_get(QVariantMap query) { POST, "/api/listen/together/sync/playlist/get", data, - { - _API, - } + Request::options(query) ); } @@ -2411,9 +2345,7 @@ QVariantMap Api::login_status(QVariantMap query) { POST, "/api/w/nuser/account/get", {}, - { - _API - } + Request::options(query) ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); @@ -2461,9 +2393,7 @@ QVariantMap Api::lyric_new(QVariantMap query) { POST, "/api/song/lyric/v1", data, - { - _API, - } + Request::options(query) ); } @@ -2478,15 +2408,14 @@ QVariantMap Api::lyric(QVariantMap query) { { "tv", -1 }, { "lv", -1 }, { "rv", -1 }, - { "kv", -1 } + { "kv", -1 }, + { "_nmclfl", 1 } }; return request( POST, - "/api/song/lyric?_nmclfl=1", + "/api/song/lyric", data, - { - _API - } + Request::options(query) ); } @@ -2503,9 +2432,7 @@ QVariantMap Api::mlog_music_rcmd(QVariantMap query) { POST, "/api/mlog/rcmd/feed/list", data, - { - _API, - } + Request::options(query) ); } @@ -2940,9 +2867,7 @@ QVariantMap Api::pl_count(QVariantMap query) { POST, "/api/pl/count", {}, - { - _API - } + Request::options(query) ); } @@ -3040,9 +2965,7 @@ QVariantMap Api::playlist_desc_update(QVariantMap query) { POST, "/api/playlist/desc/update", data, - { - _API, - } + Request::options(query) ); } @@ -3057,9 +2980,7 @@ QVariantMap Api::playlist_detail_dynamic(QVariantMap query) { POST, "/api/playlist/detail/dynamic", data, - { - _API - } + Request::options(query) ); } @@ -3074,9 +2995,7 @@ QVariantMap Api::playlist_detail(QVariantMap query) { POST, "/api/v6/playlist/detail", data, - { - _API - } + Request::options(query) ); } @@ -3131,9 +3050,7 @@ QVariantMap Api::playlist_name_update(QVariantMap query) { POST, "/api/playlist/update/name", data, - { - _API, - } + Request::options(query) ); } @@ -3166,9 +3083,7 @@ QVariantMap Api::playlist_privacy(QVariantMap query) { POST, "/api/playlist/update/privacy", data, - { - _API, - } + Request::options(query) ); } @@ -3215,9 +3130,7 @@ QVariantMap Api::playlist_tags_update(QVariantMap query) { POST, "/api/playlist/tags/update", data, - { - _API, - } + Request::options(query) ); } @@ -3268,9 +3181,7 @@ QVariantMap Api::playlist_track_all(QVariantMap query) { POST, "/api/v6/playlist/detail", data, - { - _API - } + Request::options(query) ); QVariantList trackIds = res["body"].toMap()["playlist"].toMap()["trackIds"].toList(); QVariantMap idsData{ @@ -3286,9 +3197,7 @@ QVariantMap Api::playlist_track_all(QVariantMap query) { POST, "/api/v3/song/detail", idsData, - { - _API - } + Request::options(query) ); } @@ -3449,9 +3358,7 @@ QVariantMap Api::playmode_song_vector(QVariantMap query) { POST, "/api/playmode/song/vector/get", data, - { - _API, - } + Request::options(query) ); } @@ -3496,9 +3403,7 @@ QVariantMap Api::recent_listen_list(QVariantMap query) { POST, "/api/pc/recent/listen/list", {}, - { - _API, - } + Request::options(query) ); } @@ -3824,9 +3729,7 @@ QVariantMap Api::search_default(QVariantMap query) { POST, "/api/search/defaultkeyword/get", {}, - { - _API, - } + Request::options(query) ); } @@ -3876,9 +3779,7 @@ QVariantMap Api::search_match(QVariantMap query) { POST, "/api/search/match/new", data, - { - _API, - } + Request::options(query) ); } @@ -3963,9 +3864,7 @@ QVariantMap Api::send_album(QVariantMap query) { POST, "/api/msg/private/send", data, - { - _API, - } + Request::options(query) ); } @@ -3999,9 +3898,7 @@ QVariantMap Api::send_song(QVariantMap query) { POST, "/api/msg/private/send", data, - { - _API, - } + Request::options(query) ); } @@ -4060,11 +3957,9 @@ QVariantMap Api::sheet_list(QVariantMap query) { }; return request( POST, - "/eapi/music/sheet/list/v1", + "/api/music/sheet/list/v1", data, - { - _API, - } + Request::options(query) ); } @@ -4075,11 +3970,9 @@ QVariantMap Api::sheet_preview(QVariantMap query) { }; return request( POST, - "/api/music/sheet/preview/info?id=" + query["id"].toString(), + "/api/music/sheet/preview/info", data, - { - _API, - } + Request::options(query) ); } @@ -4202,9 +4095,7 @@ QVariantMap Api::song_download_url(QVariantMap query) { POST, "/api/song/enhance/download/url", data, - { - _API, - } + Request::options(query) ); } @@ -4224,9 +4115,7 @@ QVariantMap Api::song_url_v1(QVariantMap query) { POST, "/api/song/enhance/player/url/v1", data, - { - _API, - } + Request::options(query) ); } @@ -4241,9 +4130,7 @@ QVariantMap Api::song_url(QVariantMap query) { POST, "/api/song/enhance/player/url/v1", data, - { - _API, - } + Request::options(query) ); auto result = res["body"].toMap()["data"].toList(); std::sort(result.begin(), result.end(), [&ids](const QVariant& a, const QVariant& b) { @@ -4277,9 +4164,7 @@ QVariantMap Api::song_detail(QVariantMap query) { POST, "/api/v3/song/detail", data, - { - _API - } + Request::options(query) ); } @@ -4292,9 +4177,7 @@ QVariantMap Api::song_wiki_summary(QVariantMap query) { POST, "/api/song/play/about/block/page", data, - { - _API, - } + Request::options(query) ); } @@ -4312,9 +4195,7 @@ QVariantMap Api::starpick_comments_summary(QVariantMap query) { POST, "/api/homepage/block/page", data, - { - _API, - } + Request::options(query) ); } @@ -4327,9 +4208,7 @@ QVariantMap Api::song_music_detail(QVariantMap query) { POST, "/api/song/music/detail/get", data, - { - _API, - } + Request::options(query) ); } @@ -4376,9 +4255,7 @@ QVariantMap Api::song_red_count(QVariantMap query) { POST, "/api/song/red/count", data, - { - _API, - } + Request::options(query) ); } @@ -4503,9 +4380,7 @@ QVariantMap Api::summary_annual(QVariantMap query) { POST, "/api/activity/summary/annual/" + query["year"].toString() + "/" + key, data, - { - _API, - } + Request::options(query) ); } @@ -4516,9 +4391,7 @@ QVariantMap Api::threshold_detail_get(QVariantMap query) { POST, "/api/influencer/web/apply/threshold/detail/get", data, - { - _API, - } + Request::options(query) ); } @@ -4752,9 +4625,7 @@ QVariantMap Api::toplist(QVariantMap query) { POST, "/api/toplist", {}, - { - _API - } + Request::options(query) ); } @@ -4767,9 +4638,7 @@ QVariantMap Api::ugc_album_get(QVariantMap query) { POST, "/api/rep/ugc/album/get", data, - { - _API, - } + Request::options(query) ); } @@ -4782,9 +4651,7 @@ QVariantMap Api::ugc_artist_get(QVariantMap query) { POST, "/api/rep/ugc/artist/get", data, - { - _API, - } + Request::options(query) ); } @@ -4839,9 +4706,7 @@ QVariantMap Api::ugc_mv_get(QVariantMap query) { POST, "/api/rep/ugc/mv/get", data, - { - _API, - } + Request::options(query) ); } @@ -4854,9 +4719,7 @@ QVariantMap Api::ugc_song_get(QVariantMap query) { POST, "/api/rep/ugc/song/get", data, - { - _API, - } + Request::options(query) ); } @@ -4867,9 +4730,7 @@ QVariantMap Api::ugc_user_devote(QVariantMap query) { POST, "/api/rep/ugc/user/devote", data, - { - _API, - } + Request::options(query) ); } @@ -5020,9 +4881,7 @@ QVariantMap Api::user_event(QVariantMap query) { POST, "/api/event/get/" + query["uid"].toString(), data, - { - _API - } + Request::options(query) ); } @@ -5039,9 +4898,7 @@ QVariantMap Api::user_followeds(QVariantMap query) { POST, "/api/user/getfolloweds/" + query["uid"].toString(), data, - { - _API, - } + Request::options(query) ); } @@ -5418,11 +5275,9 @@ QVariantMap Api::voice_lyric(QVariantMap query) { }; return request( POST, - "/api/voice/lyric/get?programId=" + query["id"].toString(), + "/api/voice/lyric/get", data, - { - _API, - } + Request::options(query) ); } diff --git a/QCloudMusicApi/util/request.cpp b/QCloudMusicApi/util/request.cpp index 19b3d68..ca5f8b7 100644 --- a/QCloudMusicApi/util/request.cpp +++ b/QCloudMusicApi/util/request.cpp @@ -189,7 +189,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, eapiEncrypt(); uri = uri.replace(QRegularExpression("\\w*api"), "eapi"); } - else if (options["crypto"] == "api") { + else if (options["crypto"] == "api" || options["crypto"] == "") { auto getApiDomain = [&]() { auto newApiDomain = Config::APP_CONF["newApiDomain"].toBool(); auto domain = Config::APP_CONF["domain"].toString(); @@ -325,3 +325,14 @@ QNetworkReply* Request::axios(QNetworkAccessManager::Operation method, return reply; } + +QVariantMap Request::options(QVariantMap query, QString crypto) +{ + return { + { "crypto", crypto }, + { "cookie", query["cookie"] }, + { "ua", query.value("ua", "") }, + { "proxy", query["proxy"] }, + { "realIP", query["realIP"] }, + }; +} diff --git a/QCloudMusicApi/util/request.h b/QCloudMusicApi/util/request.h index 09d6e17..c045650 100644 --- a/QCloudMusicApi/util/request.h +++ b/QCloudMusicApi/util/request.h @@ -26,6 +26,8 @@ namespace QCloudMusicApi { const QVariantMap& headers, const QByteArray& data, QNetworkProxy proxy = QNetworkProxy::DefaultProxy); + + static QVariantMap options(QVariantMap query, QString crypto = ""); }; } From 10a7fde22404cd08466cb72e982b63143214cccf Mon Sep 17 00:00:00 2001 From: overwriter <9856mmm@gmail.com> Date: Tue, 25 Jun 2024 21:05:41 +0800 Subject: [PATCH 3/5] =?UTF-8?q?refactor:=20=E8=BF=9B=E4=B8=80=E6=AD=A5?= =?UTF-8?q?=E5=B0=81=E8=A3=85weapi=E7=9A=84option?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QCloudMusicApi/module.cpp | 967 ++++++++------------------------ QCloudMusicApi/plugins.cpp | 22 +- QCloudMusicApi/util/request.cpp | 24 +- 3 files changed, 257 insertions(+), 756 deletions(-) diff --git a/QCloudMusicApi/module.cpp b/QCloudMusicApi/module.cpp index cb711c8..f400af5 100644 --- a/QCloudMusicApi/module.cpp +++ b/QCloudMusicApi/module.cpp @@ -18,17 +18,6 @@ #include "module.h" #include "plugins.h" -// 定义重复参数 -#define _PARAM \ -{ "cookie", query["cookie"] }, \ -{ "ua", query.value("ua", "") }, \ -{ "proxy", query["proxy"] }, \ -{ "realIP", query["realIP"] } \ - -#define _WEAPI \ -{ "crypto", "weapi" }, \ -_PARAM \ - using Api = NeteaseCloudMusicApi; const static auto& request = QCloudMusicApi::Request::createRequest; const static auto& POST = QNetworkAccessManager::PostOperation; @@ -40,6 +29,16 @@ NeteaseCloudMusicApi::NeteaseCloudMusicApi(QObject* parent) : QObject{ parent } {} +// api +QVariantMap Api::api(QVariantMap query) { + return request( + POST, + query["url"].toString(), + query["data"].toMap(), + Request::options(query, query["crypto"].toString()) + ); +} + // 初始化名字 QVariantMap Api::activate_init_profile(QVariantMap query) { QVariantMap data{ @@ -105,9 +104,7 @@ QVariantMap Api::album_detail(QVariantMap query) { POST, "https://music.163.com/weapi/vipmall/albumproduct/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -123,9 +120,7 @@ QVariantMap Api::album_list_style(QVariantMap query) { POST, "https://music.163.com/weapi/vipmall/appalbum/album/style", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -142,9 +137,7 @@ QVariantMap Api::album_list(QVariantMap query) { POST, "https://music.163.com/weapi/vipmall/albumproduct/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -170,9 +163,7 @@ QVariantMap Api::album_newest(QVariantMap query) { POST, "https://music.163.com/api/discovery/newAlbum", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -200,9 +191,7 @@ QVariantMap Api::album_songsaleboard(QVariantMap query) { POST, "https://music.163.com/api/feealbum/songsaleboard/" + type + "/type", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -216,9 +205,7 @@ QVariantMap Api::album_sub(QVariantMap query) { POST, "https://music.163.com/api/album/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -233,9 +220,7 @@ QVariantMap Api::album_sublist(QVariantMap query) { POST, "https://music.163.com/weapi/album/sublist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -245,9 +230,7 @@ QVariantMap Api::album(QVariantMap query) { POST, "https://music.163.com/weapi/v1/album/" + query["id"].toString(), {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -262,9 +245,7 @@ QVariantMap Api::artist_album(QVariantMap query) { POST, "https://music.163.com/weapi/artist/albums/" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -277,9 +258,7 @@ QVariantMap Api::artist_desc(QVariantMap query) { POST, "https://music.163.com/weapi/artist/introduction", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -305,9 +284,7 @@ QVariantMap Api::artist_detail(QVariantMap query) { POST, "https://music.163.com/api/artist/head/info/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -322,9 +299,7 @@ QVariantMap Api::artist_fans(QVariantMap query) { POST, "https://music.163.com/weapi/artist/fans/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -337,9 +312,7 @@ QVariantMap Api::artist_follow_count(QVariantMap query) { POST, "https://music.163.com/weapi/artist/follow/count/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -374,9 +347,7 @@ QVariantMap Api::artist_list(QVariantMap query) { POST, "https://music.163.com/api/v1/artist/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -392,9 +363,7 @@ QVariantMap Api::artist_mv(QVariantMap query) { POST, "https://music.163.com/weapi/artist/mvs", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -408,9 +377,7 @@ QVariantMap Api::artist_new_mv(QVariantMap query) { POST, "https://music.163.com/api/sub/artist/new/works/mv/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -424,9 +391,7 @@ QVariantMap Api::artist_new_song(QVariantMap query) { POST, "https://music.163.com/api/sub/artist/new/works/song/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -448,9 +413,7 @@ QVariantMap Api::artist_songs(QVariantMap query) { POST, "https://music.163.com/api/v1/artist/songs", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -465,9 +428,7 @@ QVariantMap Api::artist_sub(QVariantMap query) { POST, "https://music.163.com/weapi/artist/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -482,9 +443,7 @@ QVariantMap Api::artist_sublist(QVariantMap query) { POST, "https://music.163.com/weapi/artist/sublist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -497,9 +456,7 @@ QVariantMap Api::artist_top_song(QVariantMap query) { POST, "https://music.163.com/api/artist/top/song", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -518,9 +475,7 @@ QVariantMap Api::artist_video(QVariantMap query) { POST, "https://music.163.com/weapi/mlog/artist/video", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -530,9 +485,7 @@ QVariantMap Api::artists(QVariantMap query) { POST, "https://music.163.com/weapi/v1/artist/" + query["id"].toString(), {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -563,9 +516,7 @@ QVariantMap Api::audio_match(QVariantMap query) { POST, "https://music.163.com/api/music/audio/match", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -578,9 +529,7 @@ QVariantMap Api::avatar_upload(QVariantMap query) { { { "imgid", uploadInfo["imgId"] } }, - { - _WEAPI - } + Request::options(query, "weapi") ); return { { "status", 200 }, @@ -641,9 +590,7 @@ QVariantMap Api::calendar(QVariantMap query) { POST, "https://music.163.com/api/mcalendar/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -657,9 +604,7 @@ QVariantMap Api::captcha_sent(QVariantMap query) { POST, "https://music.163.com/api/sms/captcha/sent", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -674,9 +619,7 @@ QVariantMap Api::captcha_verify(QVariantMap query) { POST, "https://music.163.com/weapi/sms/captcha/verify", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -704,9 +647,7 @@ QVariantMap Api::check_music(QVariantMap query) { POST, "https://music.163.com/weapi/song/enhance/player/url", data, - { - _WEAPI - } + Request::options(query, "weapi") ); auto playable = false; if (result["body"].toMap()["code"] == 200) { @@ -743,9 +684,7 @@ QVariantMap Api::cloud_match(QVariantMap query) { POST, "https://music.163.com/api/cloud/user/song/match", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -802,9 +741,7 @@ QVariantMap Api::cloud(QVariantMap query) { { "songId", "0" }, { "version", 1 }, }, - { - _WEAPI, - } +Request::options(query, "weapi") ); QString artist = ""; QString album = ""; @@ -855,9 +792,7 @@ QVariantMap Api::cloud(QVariantMap query) { { "bitrate", QString::number(bitrate) }, { "resourceId", tokenRes["body"].toMap()["result"].toMap()["resourceId"] } }, - { - _WEAPI, - } +Request::options(query, "weapi") ); const auto res3 = request( POST, @@ -865,9 +800,7 @@ QVariantMap Api::cloud(QVariantMap query) { { { "songid", res2["body"].toMap()["songId"] } }, - { - _WEAPI - } + Request::options(query, "weapi") ); return { { "status", 200 }, @@ -909,9 +842,7 @@ QVariantMap Api::comment_album(QVariantMap query) { POST, "https://music.163.com/api/v1/resource/comments/R_AL_3_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -931,9 +862,7 @@ QVariantMap Api::comment_dj(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/comments/A_DJ_1_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -948,9 +877,7 @@ QVariantMap Api::comment_event(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/comments/" + query["threadId"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -967,9 +894,7 @@ QVariantMap Api::comment_floor(QVariantMap query) { POST, "https://music.163.com/api/resource/comment/floor/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -990,9 +915,7 @@ QVariantMap Api::comment_hot(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/hotcomments/" + query["type"].toString() + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1036,9 +959,7 @@ QVariantMap Api::comment_like(QVariantMap query) { POST, "https://music.163.com/weapi/v1/comment/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1058,9 +979,7 @@ QVariantMap Api::comment_music(QVariantMap query) { POST, "https://music.163.com/api/v1/resource/comments/R_SO_4_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1080,9 +999,7 @@ QVariantMap Api::comment_mv(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/comments/R_MV_5_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1146,9 +1063,7 @@ QVariantMap Api::comment_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/comments/A_PL_0_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1168,9 +1083,7 @@ QVariantMap Api::comment_video(QVariantMap query) { POST, "https://music.163.com/weapi/v1/resource/comments/R_VI_62_" + query["id"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1201,9 +1114,7 @@ QVariantMap Api::comment(QVariantMap query) { POST, "https://music.163.com/weapi/resource/comments/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1245,9 +1156,7 @@ QVariantMap Api::daily_signin(QVariantMap query) { POST, "https://music.163.com/weapi/point/dailyTask", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1260,9 +1169,7 @@ QVariantMap Api::digitalAlbum_detail(QVariantMap query) { POST, "https://music.163.com/weapi/vipmall/albumproduct/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1282,9 +1189,7 @@ QVariantMap Api::digitalAlbum_ordering(QVariantMap query) { POST, "https://music.163.com/api/ordering/web/digital", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1299,9 +1204,7 @@ QVariantMap Api::digitalAlbum_purchased(QVariantMap query) { POST, "https://music.163.com/api/digitalAlbum/purchased", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1314,9 +1217,7 @@ QVariantMap Api::digitalAlbum_sales(QVariantMap query) { POST, "https://music.163.com/weapi/vipmall/albumproduct/album/query/sales", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1330,9 +1231,7 @@ QVariantMap Api::dj_banner(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/banner/get", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1343,9 +1242,7 @@ QVariantMap Api::dj_category_excludehot(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/category/excludehot", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1356,9 +1253,7 @@ QVariantMap Api::dj_category_recommend(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/home/category/recommend", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1369,9 +1264,7 @@ QVariantMap Api::dj_catelist(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/category/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1384,9 +1277,7 @@ QVariantMap Api::dj_detail(QVariantMap query) { POST, "https://music.163.com/api/djradio/v2/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1400,9 +1291,7 @@ QVariantMap Api::dj_hot(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/hot/v1", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1416,9 +1305,7 @@ QVariantMap Api::dj_paygift(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/home/paygift/list?_nmclfl=1", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1431,9 +1318,7 @@ QVariantMap Api::dj_personalize_recommend(QVariantMap query) { POST, "https://music.163.com/api/djradio/personalize/rcmd", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1446,9 +1331,7 @@ QVariantMap Api::dj_program_detail(QVariantMap query) { POST, "https://music.163.com/api/dj/program/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1462,9 +1345,7 @@ QVariantMap Api::dj_program_toplist_hours(QVariantMap query) { POST, "https://music.163.com/api/djprogram/toplist/hours", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1478,9 +1359,7 @@ QVariantMap Api::dj_program_toplist(QVariantMap query) { POST, "https://music.163.com/api/program/toplist/v1", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1496,9 +1375,7 @@ QVariantMap Api::dj_program(QVariantMap query) { POST, "https://music.163.com/weapi/dj/program/byradio", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1513,9 +1390,7 @@ QVariantMap Api::dj_radio_hot(QVariantMap query) { POST, "https://music.163.com/api/djradio/hot", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1551,9 +1426,7 @@ QVariantMap Api::dj_recommend_type(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/recommend", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1563,9 +1436,7 @@ QVariantMap Api::dj_recommend(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/recommend/v1", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1579,9 +1450,7 @@ QVariantMap Api::dj_sub(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1596,9 +1465,7 @@ QVariantMap Api::dj_sublist(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/get/subed", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1614,9 +1481,7 @@ QVariantMap Api::dj_subscriber(QVariantMap query) { POST, "https://music.163.com/api/djradio/subscriber", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1629,9 +1494,7 @@ QVariantMap Api::dj_today_perfered(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/home/today/perfered", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1645,9 +1508,7 @@ QVariantMap Api::dj_toplist_hours(QVariantMap query) { POST, "https://music.163.com/api/dj/toplist/hours", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1661,9 +1522,7 @@ QVariantMap Api::dj_toplist_newcomer(QVariantMap query) { POST, "https://music.163.com/api/dj/toplist/newcomer", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1677,9 +1536,7 @@ QVariantMap Api::dj_toplist_pay(QVariantMap query) { POST, "https://music.163.com/api/djradio/toplist/pay", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1693,9 +1550,7 @@ QVariantMap Api::dj_toplist_popular(QVariantMap query) { POST, "https://music.163.com/api/dj/toplist/popular", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1714,9 +1569,7 @@ QVariantMap Api::dj_toplist(QVariantMap query) { POST, "https://music.163.com/api/djradio/toplist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1732,9 +1585,7 @@ QVariantMap Api::djRadio_top(QVariantMap query) { POST, "https://interface.music.163.com/weapi/expert/worksdata/works/top/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1777,9 +1628,7 @@ QVariantMap Api::event_del(QVariantMap query) { POST, "https://music.163.com/eapi/event/delete", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1798,9 +1647,7 @@ QVariantMap Api::event_forward(QVariantMap query) { POST, "https://music.163.com/weapi/event/forward", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1814,9 +1661,7 @@ QVariantMap Api::event(QVariantMap query) { POST, "https://music.163.com/weapi/v1/event/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1891,9 +1736,7 @@ QVariantMap Api::fm_trash(QVariantMap query) { + QStringLiteral("&time=") + query.value("time", 25).toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1911,9 +1754,7 @@ QVariantMap Api::follow(QVariantMap query) { + QStringLiteral("/") + query["id"].toString(), {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1926,9 +1767,7 @@ QVariantMap Api::get_userids(QVariantMap query) { POST, "https://music.163.com/api/user/getUserIds", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1944,9 +1783,7 @@ QVariantMap Api::history_recommend_songs_detail(QVariantMap query) { POST, "https://music.163.com/api/discovery/recommend/songs/history/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1960,9 +1797,7 @@ QVariantMap Api::history_recommend_songs(QVariantMap query) { POST, "https://music.163.com/api/discovery/recommend/songs/history/recent", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -1978,9 +1813,7 @@ QVariantMap Api::homepage_block_page(QVariantMap query) { POST, "https://music.163.com/api/homepage/block/page", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2008,9 +1841,7 @@ QVariantMap Api::hot_topic(QVariantMap query) { POST, "https://music.163.com/api/act/hot", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2048,9 +1879,7 @@ QVariantMap Api::like(QVariantMap query) { POST, "https://music.163.com/api/radio/like", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2063,9 +1892,7 @@ QVariantMap Api::likelist(QVariantMap query) { POST, "https://music.163.com/weapi/song/like/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2168,9 +1995,7 @@ QVariantMap Api::listentogether_status(QVariantMap query) { POST, "https://music.163.com/api/listen/together/status/get", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2235,10 +2060,7 @@ QVariantMap Api::login_cellphone(QVariantMap query) { POST, "https://music.163.com/weapi/login/cellphone", data, - { - _WEAPI, - { "uaType", "pc" }, - } + Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); @@ -2262,9 +2084,7 @@ QVariantMap Api::login_qr_check(QVariantMap query) { POST, "https://music.163.com/weapi/login/qrcode/client/login", data, - { - _WEAPI - } + Request::options(query, "weapi") ); auto body = result["body"].toMap(); body["cookie"] = result["cookie"]; @@ -2285,9 +2105,7 @@ QVariantMap Api::login_qr_key(QVariantMap query) { POST, "https://music.163.com/weapi/login/qrcode/unikey", data, - { - _WEAPI - } + Request::options(query, "weapi") ); result = QVariantMap{ { "status", 200 }, @@ -2322,10 +2140,7 @@ QVariantMap Api::login_refresh(QVariantMap query) { POST, "https://music.163.com/weapi/login/token/refresh", {}, - { - _WEAPI, - { "uaType", "pc" }, - } + Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); @@ -2369,10 +2184,7 @@ QVariantMap Api::logout(QVariantMap query) { POST, "https://music.163.com/weapi/logout", {}, - { - _WEAPI, - { "uaType", "pc" }, - } + Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); } @@ -2445,9 +2257,7 @@ QVariantMap Api::mlog_to_video(QVariantMap query) { POST, "https://music.163.com/weapi/mlog/video/convert/id", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2462,9 +2272,7 @@ QVariantMap Api::mlog_url(QVariantMap query) { POST, "https://music.163.com/weapi/mlog/detail/v1", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2480,9 +2288,7 @@ QVariantMap Api::msg_comments(QVariantMap query) { POST, "https://music.163.com/api/v1/user/comments/" + query["uid"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2497,9 +2303,7 @@ QVariantMap Api::msg_forwards(QVariantMap query) { POST, "https://music.163.com/api/forwards/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2513,9 +2317,7 @@ QVariantMap Api::msg_notices(QVariantMap query) { POST, "https://music.163.com/api/msg/notices", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2531,9 +2333,7 @@ QVariantMap Api::msg_private_history(QVariantMap query) { POST, "https://music.163.com/api/msg/private/history", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2548,9 +2348,7 @@ QVariantMap Api::msg_private(QVariantMap query) { POST, "https://music.163.com/api/msg/private/users", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2561,9 +2359,7 @@ QVariantMap Api::msg_recentcontact(QVariantMap query) { POST, "https://music.163.com/api/msg/recentcontact/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2576,9 +2372,7 @@ QVariantMap Api::music_first_listen_info(QVariantMap query) { POST, "https://interface3.music.163.com/api/content/activity/music/first/listen/info", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2599,9 +2393,7 @@ QVariantMap Api::mv_all(QVariantMap query) { POST, "https://interface.music.163.com/api/mv/all", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2615,9 +2407,7 @@ QVariantMap Api::mv_detail_info(QVariantMap query) { POST, "https://music.163.com/api/comment/commentthread/info", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2631,9 +2421,7 @@ QVariantMap Api::mv_detail(QVariantMap query) { POST, "https://music.163.com/api/v1/mv/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2647,9 +2435,7 @@ QVariantMap Api::mv_exclusive_rcmd(QVariantMap query) { POST, "https://interface.music.163.com/api/mv/exclusive/rcmd", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2665,9 +2451,7 @@ QVariantMap Api::mv_first(QVariantMap query) { POST, "https://interface.music.163.com/weapi/mv/first", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2682,9 +2466,7 @@ QVariantMap Api::mv_sub(QVariantMap query) { POST, "https://music.163.com/weapi/mv/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2699,9 +2481,7 @@ QVariantMap Api::mv_sublist(QVariantMap query) { POST, "https://music.163.com/weapi/cloudvideo/allvideo/sublist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2715,9 +2495,7 @@ QVariantMap Api::mv_url(QVariantMap query) { POST, "https://music.163.com/weapi/song/enhance/play/mv/url", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2730,9 +2508,7 @@ QVariantMap Api::nickname_check(QVariantMap query) { POST, "https://music.163.com/api/nickname/duplicated", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2748,12 +2524,9 @@ QVariantMap Api::personal_fm_mode(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/eapi/v1/radio/get", + "/api/v1/radio/get", data, - { - _WEAPI, - { "url", "/api/v1/radio/get" }, - } + Request::options(query) ); } @@ -2763,9 +2536,7 @@ QVariantMap Api::personal_fm(QVariantMap query) { POST, "https://music.163.com/weapi/v1/radio/get", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2775,9 +2546,7 @@ QVariantMap Api::personalized_djprogram(QVariantMap query) { POST, "https://music.163.com/weapi/personalized/djprogram", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2787,9 +2556,7 @@ QVariantMap Api::personalized_mv(QVariantMap query) { POST, "https://music.163.com/weapi/personalized/mv", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2808,9 +2575,7 @@ QVariantMap Api::personalized_newsong(QVariantMap query) { POST, "https://music.163.com/api/personalized/newsong", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2825,9 +2590,7 @@ QVariantMap Api::personalized_privatecontent_list(QVariantMap query) { POST, "https://music.163.com/api/v2/privatecontent/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2837,9 +2600,7 @@ QVariantMap Api::personalized_privatecontent(QVariantMap query) { POST, "https://music.163.com/weapi/personalized/privatecontent", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2855,9 +2616,7 @@ QVariantMap Api::personalized(QVariantMap query) { POST, "https://music.163.com/weapi/personalized/playlist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2877,9 +2636,7 @@ QVariantMap Api::playlist_catlist(QVariantMap query) { POST, "https://music.163.com/weapi/playlist/catalogue", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2902,9 +2659,7 @@ QVariantMap Api::playlist_cover_update(QVariantMap query) { { "id", query["id"] }, { "coverImgId", uploadInfo["imgId"] } }, - { - _WEAPI - } + Request::options(query, "weapi") ); return { { "status", 200 }, @@ -2930,9 +2685,7 @@ QVariantMap Api::playlist_create(QVariantMap query) { POST, "https://music.163.com/api/playlist/create", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -2949,9 +2702,7 @@ QVariantMap Api::playlist_delete(QVariantMap query) { POST, "https://music.163.com/weapi/playlist/remove", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3006,9 +2757,7 @@ QVariantMap Api::playlist_highquality_tags(QVariantMap query) { POST, "https://music.163.com/api/playlist/highquality/tags", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3018,9 +2767,7 @@ QVariantMap Api::playlist_hot(QVariantMap query) { POST, "https://music.163.com/weapi/playlist/hottags", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3034,9 +2781,7 @@ QVariantMap Api::playlist_mylike(QVariantMap query) { POST, "https://music.163.com/api/mlog/playlist/mylike/bytime/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3067,9 +2812,7 @@ QVariantMap Api::playlist_order_update(QVariantMap query) { POST, "https://music.163.com/api/playlist/order/update", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3097,9 +2840,7 @@ QVariantMap Api::playlist_subscribe(QVariantMap query) { POST, "https://music.163.com/api/playlist/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3114,9 +2855,7 @@ QVariantMap Api::playlist_subscribers(QVariantMap query) { POST, "https://music.163.com/api/playlist/subscribers", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3159,9 +2898,7 @@ QVariantMap Api::playlist_track_add(QVariantMap query) { POST, "https://music.163.com/api/playlist/track/add", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3226,9 +2963,7 @@ QVariantMap Api::playlist_track_delete(QVariantMap query) { POST, "https://music.163.com/api/playlist/track/delete", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3245,9 +2980,7 @@ QVariantMap Api::playlist_tracks(QVariantMap query) { POST, "https://music.163.com/weapi/playlist/manipulate/tracks", data, - { - _WEAPI - } + Request::options(query, "weapi") ); auto code = res["body"].toMap()["code"].toInt(); if (code == 200) { @@ -3266,9 +2999,7 @@ QVariantMap Api::playlist_tracks(QVariantMap query) { { "trackIds", QJsonDocument::fromVariant(tracks + tracks).toJson() }, // 歌曲id { "imme", "true" }, }, - { - _WEAPI - } +Request::options(query, "weapi") ); } else { @@ -3288,9 +3019,7 @@ QVariantMap Api::playlist_update_playcount(QVariantMap query) { POST, "https://music.163.com/api/playlist/update/playcount", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3311,9 +3040,7 @@ QVariantMap Api::playlist_update(QVariantMap query) { POST, "https://music.163.com/weapi/batch", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3324,9 +3051,7 @@ QVariantMap Api::playlist_video_recent(QVariantMap query) { POST, "https://music.163.com/api/playlist/video/recent", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3343,9 +3068,7 @@ QVariantMap Api::playmode_intelligence_list(QVariantMap query) { POST, "https://music.163.com/weapi/playmode/intelligence/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3373,9 +3096,7 @@ QVariantMap Api::program_recommend(QVariantMap query) { POST, "https://music.163.com/weapi/program/recommend/v1", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3391,9 +3112,7 @@ QVariantMap Api::rebind(QVariantMap query) { POST, "https://music.163.com/api/user/replaceCellphone", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3413,9 +3132,7 @@ QVariantMap Api::recommend_resource(QVariantMap query) { POST, "https://music.163.com/weapi/v1/discovery/recommend/resource", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3430,9 +3147,7 @@ QVariantMap Api::recommend_songs_dislike(QVariantMap query) { POST, "https://music.163.com/weapi/v2/discovery/recommend/dislike", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3446,9 +3161,7 @@ QVariantMap Api::recommend_songs(QVariantMap query) { POST, "https://music.163.com/api/v3/discovery/recommend/songs", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3461,9 +3174,7 @@ QVariantMap Api::record_recent_album(QVariantMap query) { POST, "https://music.163.com/api/play-record/album/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3476,9 +3187,7 @@ QVariantMap Api::record_recent_dj(QVariantMap query) { POST, "https://music.163.com/api/play-record/djradio/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3491,9 +3200,7 @@ QVariantMap Api::record_recent_playlist(QVariantMap query) { POST, "https://music.163.com/api/play-record/playlist/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3506,9 +3213,7 @@ QVariantMap Api::record_recent_song(QVariantMap query) { POST, "https://music.163.com/api/play-record/song/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3521,9 +3226,7 @@ QVariantMap Api::record_recent_video(QVariantMap query) { POST, "https://music.163.com/api/play-record/newvideo/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3536,9 +3239,7 @@ QVariantMap Api::record_recent_voice(QVariantMap query) { POST, "https://music.163.com/api/play-record/voice/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3569,9 +3270,7 @@ QVariantMap Api::register_anonimous(QVariantMap query) { POST, "https://music.163.com/api/register/anonimous", data, - { - _WEAPI - } + Request::options(query, "weapi") ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); @@ -3602,9 +3301,7 @@ QVariantMap Api::register_cellphone(QVariantMap query) { POST, "https://music.163.com/api/register/cellphone", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3618,9 +3315,7 @@ QVariantMap Api::related_allvideo(QVariantMap query) { POST, "https://music.163.com/weapi/cloudvideo/v1/allvideo/rcmd", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3630,10 +3325,7 @@ QVariantMap Api::related_playlist(QVariantMap query) { GET, "https://music.163.com/playlist?id=" + query["id"].toString(), {}, - { - { "ua", "pc" }, - _PARAM - } + Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); QRegularExpression pattern("
[\\s\\S]*?[\\s\\S]*?]*>([^<]+?)<\\/a>[\\s\\S]*?]*>([^<]+?)<\\/a>"); QRegularExpressionMatchIterator it = pattern.globalMatch(result["body"].toString()); @@ -3688,9 +3380,7 @@ QVariantMap Api::resource_like(QVariantMap query) { POST, "https://music.163.com/weapi/resource/" + query["t"].toString(), data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3717,9 +3407,7 @@ QVariantMap Api::scrobble(QVariantMap query) { POST, "https://music.163.com/weapi/feedback/weblog", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3739,9 +3427,7 @@ QVariantMap Api::search_hot_detail(QVariantMap query) { POST, "https://music.163.com/weapi/hotsearchlist/get", {}, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3754,10 +3440,7 @@ QVariantMap Api::search_hot(QVariantMap query) { POST, "https://music.163.com/weapi/search/hot", data, - { - _WEAPI, - { "ua", "mobile" }, - } + Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "mobile" } }) ); } @@ -3793,9 +3476,7 @@ QVariantMap Api::search_multimatch(QVariantMap query) { POST, "https://music.163.com/weapi/search/suggest/multimatch", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3809,9 +3490,7 @@ QVariantMap Api::search_suggest(QVariantMap query) { POST, "https://music.163.com/weapi/search/suggest/" + type, data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3828,9 +3507,7 @@ QVariantMap Api::search(QVariantMap query) { POST, "https://music.163.com/api/search/voice/get", data, - { - _WEAPI - } +Request::options(query, "weapi") ); } QVariantMap cookie = query["cookie"].toMap(); @@ -3846,9 +3523,7 @@ QVariantMap Api::search(QVariantMap query) { POST, "https://music.163.com/weapi/search/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3880,9 +3555,7 @@ QVariantMap Api::send_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/msg/private/send", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3913,9 +3586,7 @@ QVariantMap Api::send_text(QVariantMap query) { POST, "https://music.163.com/weapi/msg/private/send", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3926,9 +3597,7 @@ QVariantMap Api::setting(QVariantMap query) { POST, "https://music.163.com/api/user/setting", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3943,9 +3612,7 @@ QVariantMap Api::share_resource(QVariantMap query) { POST, "https://music.163.com/weapi/share/friends/resource", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -3983,9 +3650,7 @@ QVariantMap Api::sign_happy_info(QVariantMap query) { POST, "https://music.163.com/api/sign/happy/info", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -3998,9 +3663,7 @@ QVariantMap Api::signin_progress(QVariantMap query) { POST, "https://music.163.com/weapi/act/modules/signin/v2/progress", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4013,9 +3676,7 @@ QVariantMap Api::simi_artist(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiArtist", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4028,9 +3689,7 @@ QVariantMap Api::simi_mv(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiMV", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4045,9 +3704,7 @@ QVariantMap Api::simi_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiPlaylist", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4062,9 +3719,7 @@ QVariantMap Api::simi_song(QVariantMap query) { POST, "https://music.163.com/weapi/v1/discovery/simiSong", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4079,9 +3734,7 @@ QVariantMap Api::simi_user(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiUser", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4221,12 +3874,9 @@ QVariantMap Api::song_order_update(QVariantMap query) { }; return request( POST, - "http://interface.music.163.com/api/playlist/manipulate/tracks", + "/api/playlist/manipulate/tracks", data, - { - _WEAPI, - { "url", "/api/playlist/desc/update" } - } + Request::options(query) ); } @@ -4240,9 +3890,7 @@ QVariantMap Api::song_purchased(QVariantMap query) { POST, "https://music.163.com/weapi/single/mybought/song/list", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4271,9 +3919,7 @@ QVariantMap Api::style_album(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/album", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4289,9 +3935,7 @@ QVariantMap Api::style_artist(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/artist", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4304,9 +3948,7 @@ QVariantMap Api::style_detail(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/head", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4317,9 +3959,7 @@ QVariantMap Api::style_list(QVariantMap query) { POST, "https://music.163.com/api/tag/list/get", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4335,9 +3975,7 @@ QVariantMap Api::style_playlist(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/playlist", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4348,9 +3986,7 @@ QVariantMap Api::style_preference(QVariantMap query) { POST, "https://music.163.com/api/tag/my/preference/get", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4366,9 +4002,7 @@ QVariantMap Api::style_song(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/song", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4412,9 +4046,7 @@ QVariantMap Api::top_album(QVariantMap query) { POST, "https://music.163.com/api/discovery/new/albums/area", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4429,9 +4061,7 @@ QVariantMap Api::top_artists(QVariantMap query) { POST, "https://music.163.com/weapi/artist/top", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4460,9 +4090,7 @@ QVariantMap Api::top_list(QVariantMap query) { POST, "https://interface3.music.163.com/api/playlist/v4/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4478,9 +4106,7 @@ QVariantMap Api::top_mv(QVariantMap query) { POST, "https://music.163.com/weapi/mv/toplist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4496,9 +4122,7 @@ QVariantMap Api::top_playlist_highquality(QVariantMap query) { POST, "https://music.163.com/api/playlist/highquality/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4515,9 +4139,7 @@ QVariantMap Api::top_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/playlist/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); const auto result = QString(QJsonDocument::fromVariant(res).toJson()) .replace(QRegularExpression("avatarImgId_str"), "avatarImgIdStr"); @@ -4536,9 +4158,7 @@ QVariantMap Api::top_song(QVariantMap query) { POST, "https://music.163.com/weapi/v1/discovery/new/songs", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4551,9 +4171,7 @@ QVariantMap Api::topic_detail_event_hot(QVariantMap query) { POST, "https://music.163.com/api/act/event/hot", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4566,9 +4184,7 @@ QVariantMap Api::topic_detail(QVariantMap query) { POST, "https://music.163.com/api/act/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4583,9 +4199,7 @@ QVariantMap Api::topic_sublist(QVariantMap query) { POST, "https://music.163.com/api/topic/sublist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4601,9 +4215,7 @@ QVariantMap Api::toplist_artist(QVariantMap query) { POST, "https://music.163.com/weapi/toplist/artist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4613,9 +4225,7 @@ QVariantMap Api::toplist_detail(QVariantMap query) { POST, "https://music.163.com/weapi/toplist/detail", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4664,12 +4274,9 @@ QVariantMap Api::ugc_artist_search(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/rep/ugc/artist/search", + "/api/rep/ugc/artist/search", data, - { - _WEAPI, - { "url", "/api/rep/ugc/artist/search" }, - } + Request::options(query) ); } @@ -4691,9 +4298,7 @@ QVariantMap Api::ugc_detail(QVariantMap query) { POST, "https://music.163.com/weapi/rep/ugc/detail", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -4741,9 +4346,7 @@ QVariantMap Api::user_account(QVariantMap query) { POST, "https://music.163.com/api/nuser/account/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4756,9 +4359,7 @@ QVariantMap Api::user_audio(QVariantMap query) { POST, "https://music.163.com/weapi/djradio/get/byuser", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4769,9 +4370,7 @@ QVariantMap Api::user_binding(QVariantMap query) { POST, "https://music.163.com/api/v1/user/bindings/" + query["uid"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4784,9 +4383,7 @@ QVariantMap Api::user_cloud_del(QVariantMap query) { POST, "https://music.163.com/weapi/cloud/del", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4800,9 +4397,7 @@ QVariantMap Api::user_cloud_detail(QVariantMap query) { POST, "https://music.163.com/weapi/v1/cloud/get/byids", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4816,9 +4411,7 @@ QVariantMap Api::user_cloud(QVariantMap query) { POST, "https://music.163.com/api/v1/cloud/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4835,9 +4428,7 @@ QVariantMap Api::user_comment_history(QVariantMap query) { POST, "https://music.163.com/api/comment/user/comment/history", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4847,9 +4438,7 @@ QVariantMap Api::user_detail(QVariantMap query) { POST, "https://music.163.com/weapi/v1/user/detail/" + query["uid"].toString(), {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4863,9 +4452,7 @@ QVariantMap Api::user_dj(QVariantMap query) { POST, "https://music.163.com/weapi/dj/program/" + query["uid"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4913,9 +4500,7 @@ QVariantMap Api::user_follows(QVariantMap query) { POST, "https://music.163.com/weapi/user/getfollows/" + query["uid"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4926,9 +4511,7 @@ QVariantMap Api::user_level(QVariantMap query) { POST, "https://music.163.com/weapi/user/level", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4944,9 +4527,7 @@ QVariantMap Api::user_playlist(QVariantMap query) { POST, "https://music.163.com/api/user/playlist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4960,9 +4541,7 @@ QVariantMap Api::user_record(QVariantMap query) { POST, "https://music.163.com/weapi/v1/play/record", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4978,9 +4557,7 @@ QVariantMap Api::user_replacephone(QVariantMap query) { POST, "https://music.163.com/api/user/replaceCellphone", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -4990,9 +4567,7 @@ QVariantMap Api::user_subcount(QVariantMap query) { POST, "https://music.163.com/weapi/subcount", {}, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5010,9 +4585,7 @@ QVariantMap Api::user_update(QVariantMap query) { POST, "https://music.163.com/api/user/profile/update", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5034,9 +4607,7 @@ QVariantMap Api::verify_getQr(QVariantMap query) { POST, "https://music.163.com/weapi/frontrisk/verify/qrcodestatus", data, - { - _WEAPI - } + Request::options(query, "weapi") ); const QString result = "https://st.music.163.com/encrypt-pages?qrCode=" + res["body"].toMap()["data"].toMap()["qrCode"].toString() @@ -5065,9 +4636,7 @@ QVariantMap Api::verify_qrcodestatus(QVariantMap query) { POST, "https://music.163.com/weapi/frontrisk/verify/qrcodestatus", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5082,9 +4651,7 @@ QVariantMap Api::video_category_list(QVariantMap query) { POST, "https://music.163.com/api/cloudvideo/category/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5098,9 +4665,7 @@ QVariantMap Api::video_detail_info(QVariantMap query) { POST, "https://music.163.com/api/comment/commentthread/info", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5113,9 +4678,7 @@ QVariantMap Api::video_detail(QVariantMap query) { POST, "https://music.163.com/weapi/cloudvideo/v1/video/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5126,9 +4689,7 @@ QVariantMap Api::video_group_list(QVariantMap query) { POST, "https://music.163.com/api/cloudvideo/group/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5144,9 +4705,7 @@ QVariantMap Api::video_group(QVariantMap query) { POST, "https://music.163.com/api/videotimeline/videogroup/otherclient/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5160,9 +4719,7 @@ QVariantMap Api::video_sub(QVariantMap query) { POST, "https://music.163.com/weapi/cloudvideo/video/" + query["t"].toString(), data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5178,9 +4735,7 @@ QVariantMap Api::video_timeline_all(QVariantMap query) { POST, "https://music.163.com/api/videotimeline/otherclient/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5197,9 +4752,7 @@ QVariantMap Api::video_timeline_recommend(QVariantMap query) { POST, "https://music.163.com/api/videotimeline/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5213,9 +4766,7 @@ QVariantMap Api::video_url(QVariantMap query) { POST, "https://music.163.com/weapi/cloudvideo/playurl", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5232,9 +4783,7 @@ QVariantMap Api::vip_timemachine(QVariantMap query) { POST, "https://music.163.com/weapi/vipmusic/newrecord/weekflow", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5247,9 +4796,7 @@ QVariantMap Api::voice_delete(QVariantMap query) { POST, "https://interface.music.163.com/api/content/voice/delete", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5262,9 +4809,7 @@ QVariantMap Api::voice_detail(QVariantMap query) { POST, "https://interface.music.163.com/weapi/voice/workbench/voice/detail", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5296,9 +4841,7 @@ QVariantMap Api::voicelist_list_search(QVariantMap query) { POST, "https://interface.music.163.com/api/voice/workbench/voice/list", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5313,9 +4856,7 @@ QVariantMap Api::voicelist_list(QVariantMap query) { POST, "https://interface.music.163.com/weapi/voice/workbench/voices/by/voicelist", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5328,9 +4869,7 @@ QVariantMap Api::voicelist_detail(QVariantMap query) { POST, "https://interface.music.163.com/weapi/voice/workbench/voicelist/detail", data, - { - _WEAPI, - } +Request::options(query, "weapi") ); } @@ -5346,9 +4885,7 @@ QVariantMap Api::voicelist_search(QVariantMap query) { POST, "https://interface.music.163.com/weapi/voice/workbench/voicelist/search", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5365,9 +4902,7 @@ QVariantMap Api::voicelist_trans(QVariantMap query) { POST, "https://interface.music.163.com/api/voice/workbench/radio/program/trans", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5377,9 +4912,7 @@ QVariantMap Api::weblog(QVariantMap query) { POST, "https://music.163.com/weapi/feedback/weblog", query.value("data", QVariantMap()).toMap(), - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5391,9 +4924,7 @@ QVariantMap Api::yunbei_tasks_todo(QVariantMap query) { POST, "https://music.163.com/api/usertool/task/todo/query", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5405,9 +4936,7 @@ QVariantMap Api::yunbei_tasks(QVariantMap query) { POST, "https://music.163.com/api/usertool/task/list/all", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5419,9 +4948,7 @@ QVariantMap Api::yunbei_today(QVariantMap query) { POST, "https://music.163.com/api/point/today/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } @@ -5433,9 +4960,7 @@ QVariantMap Api::yunbei(QVariantMap query) { POST, "https://music.163.com/api/point/signed/get", data, - { - _WEAPI - } + Request::options(query, "weapi") ); } diff --git a/QCloudMusicApi/plugins.cpp b/QCloudMusicApi/plugins.cpp index e487c1a..85305d6 100644 --- a/QCloudMusicApi/plugins.cpp +++ b/QCloudMusicApi/plugins.cpp @@ -40,12 +40,7 @@ QVariantMap Plugins::songUpload(QVariantMap query) { "type", "audio" }, { "md5", query["songFile"].toMap()["md5"] }, }, - { - { "crypto", "weapi" }, - { "cookie", query["cookie"] }, - { "ua", query.value("ua", "") }, - { "proxy", query["proxy"] }, - } + Request::options(query, "weapi") ); // 上传 @@ -89,12 +84,7 @@ QVariantMap Plugins::upload(QVariantMap query) POST, "https://music.163.com/weapi/nos/token/alloc", data, - { - { "crypto", "weapi" }, - { "cookie", query["cookie"] }, - { "ua", query.value("ua", "") }, - { "proxy", query["proxy"] }, - } + Request::options(query, "weapi") ); auto reply = Request::axios(QNetworkAccessManager::PostOperation, "https://nosup-hz1.127.net/yyimgs/" @@ -128,13 +118,7 @@ QVariantMap Plugins::upload(QVariantMap query) .arg(imgSize) .arg(imgSize), {}, - { - { "crypto", "weapi" }, - { "cookie", query["cookie"] }, - { "ua", query.value("ua", "") }, - { "proxy", query["proxy"] }, - { "ua", query.value("ua", "") }, - } + Request::options(query, "weapi") ); return { diff --git a/QCloudMusicApi/util/request.cpp b/QCloudMusicApi/util/request.cpp index ca5f8b7..7a616e6 100644 --- a/QCloudMusicApi/util/request.cpp +++ b/QCloudMusicApi/util/request.cpp @@ -135,6 +135,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, } auto eapiEncrypt = [&]() { + options["url"] = uri; const QVariantMap cookie = options.value("cookie", QVariantMap()).toMap(); const QString csrfToken = cookie.value("__csrf", "").toString(); QVariantMap header{ @@ -167,7 +168,8 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, }(); data["header"] = header; data = Crypto::eapi(options["url"].toString(), QJsonDocument::fromVariant(data)); - }; + uri = Config::APP_CONF["apiDomain"].toString() + "/eapi/" + uri.mid(5); + }; if (options["crypto"] == "weapi") { headers["User-Agent"] = options.value("ua", chooseUserAgent("pc")); @@ -187,23 +189,13 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, } else if (options["crypto"] == "eapi") { eapiEncrypt(); - uri = uri.replace(QRegularExpression("\\w*api"), "eapi"); } - else if (options["crypto"] == "api" || options["crypto"] == "") { - auto getApiDomain = [&]() { - auto newApiDomain = Config::APP_CONF["newApiDomain"].toBool(); - auto domain = Config::APP_CONF["domain"].toString(); - if (newApiDomain) { - domain = domain.replace("//music", "//interface.music"); - } - return domain; - }; + else if (options["crypto"] == "api") { + uri = Config::APP_CONF["apiDomain"].toString() + uri; + } + else if (options["crypto"] == "") { if (Config::APP_CONF["encrypt"].toBool()) { - options["url"] = uri; - eapiEncrypt(); - - uri = getApiDomain() + "/eapi/" + uri.mid(5); } else uri = Config::APP_CONF["apiDomain"].toString() + uri; } @@ -329,7 +321,7 @@ QNetworkReply* Request::axios(QNetworkAccessManager::Operation method, QVariantMap Request::options(QVariantMap query, QString crypto) { return { - { "crypto", crypto }, + { "crypto", query.value("crypto", crypto) }, { "cookie", query["cookie"] }, { "ua", query.value("ua", "") }, { "proxy", query["proxy"] }, From 37b12c2aa0e9afec0395fd7b542fd06fea476951 Mon Sep 17 00:00:00 2001 From: overwriter <9856mmm@gmail.com> Date: Tue, 25 Jun 2024 21:22:49 +0800 Subject: [PATCH 4/5] =?UTF-8?q?refactor:=20=E9=83=A8=E5=88=86weapi?= =?UTF-8?q?=E6=9B=BF=E6=8D=A2=E4=B8=BAapi?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QCloudMusicApi/module.cpp | 194 ++++++++++++++++++-------------------- 1 file changed, 90 insertions(+), 104 deletions(-) diff --git a/QCloudMusicApi/module.cpp b/QCloudMusicApi/module.cpp index f400af5..b99affc 100644 --- a/QCloudMusicApi/module.cpp +++ b/QCloudMusicApi/module.cpp @@ -29,16 +29,6 @@ NeteaseCloudMusicApi::NeteaseCloudMusicApi(QObject* parent) : QObject{ parent } {} -// api -QVariantMap Api::api(QVariantMap query) { - return request( - POST, - query["url"].toString(), - query["data"].toMap(), - Request::options(query, query["crypto"].toString()) - ); -} - // 初始化名字 QVariantMap Api::activate_init_profile(QVariantMap query) { QVariantMap data{ @@ -164,7 +154,7 @@ QVariantMap Api::album_newest(QVariantMap query) { "https://music.163.com/api/discovery/newAlbum", {}, Request::options(query, "weapi") - ); + ); } // 获取专辑歌曲的音质 @@ -231,7 +221,7 @@ QVariantMap Api::album(QVariantMap query) { "https://music.163.com/weapi/v1/album/" + query["id"].toString(), {}, Request::options(query, "weapi") - ); + ); } // 歌手专辑列表 @@ -486,7 +476,7 @@ QVariantMap Api::artists(QVariantMap query) { "https://music.163.com/weapi/v1/artist/" + query["id"].toString(), {}, Request::options(query, "weapi") - ); + ); } // 听歌识曲 @@ -530,7 +520,7 @@ QVariantMap Api::avatar_upload(QVariantMap query) { { "imgid", uploadInfo["imgId"] } }, Request::options(query, "weapi") - ); + ); return { { "status", 200 }, { "body", QVariantMap @@ -577,7 +567,7 @@ QVariantMap Api::banner(QVariantMap query) { { "clientType", type } }, Request::options(query) - ); + ); } // 音乐日历 @@ -732,7 +722,7 @@ QVariantMap Api::cloud(QVariantMap query) { } const QVariantMap res = request( POST, - "https://interface.music.163.com/api/cloud/upload/check", + "/api/cloud/upload/check", { { "bitrate", QString::number(bitrate) }, { "ext", "" }, @@ -741,7 +731,7 @@ QVariantMap Api::cloud(QVariantMap query) { { "songId", "0" }, { "version", 1 }, }, -Request::options(query, "weapi") + Request::options(query) ); QString artist = ""; QString album = ""; @@ -769,19 +759,15 @@ Request::options(query, "weapi") { "type", "audio" }, { "md5", query["songFile"].toMap()["md5"] } }, - { - { "crypto", "weapi" }, - { "cookie", query["cookie"] }, - { "proxy", query["proxy"] } - } - ); + Request::options(query, "weapi") + ); if (res["body"].toMap()["needUpload"].toBool()) { const auto uploadInfo = QCloudMusicApi::Plugins::songUpload(query); } const auto res2 = request( POST, - "https://music.163.com/api/upload/cloud/info/v2", + "/api/upload/cloud/info/v2", { { "md5", query["songFile"].toMap()["md5"] }, { "songid", res["body"].toMap()["songId"] }, @@ -792,16 +778,16 @@ Request::options(query, "weapi") { "bitrate", QString::number(bitrate) }, { "resourceId", tokenRes["body"].toMap()["result"].toMap()["resourceId"] } }, -Request::options(query, "weapi") - ); + Request::options(query) + ); const auto res3 = request( POST, - "https://interface.music.163.com/api/cloud/pub/v2", + "/api/cloud/pub/v2", { { "songid", res2["body"].toMap()["songId"] } }, - Request::options(query, "weapi") - ); + Request::options(query) + ); return { { "status", 200 }, { "body", QCloudMusicApi::Index::mergeMap(res["body"].toMap(), res3["body"].toMap()) }, @@ -1232,7 +1218,7 @@ QVariantMap Api::dj_banner(QVariantMap query) { "https://music.163.com/weapi/djradio/banner/get", {}, Request::options(query, "weapi") - ); + ); } // 电台非热门类型 @@ -1437,7 +1423,7 @@ QVariantMap Api::dj_recommend(QVariantMap query) { "https://music.163.com/weapi/djradio/recommend/v1", {}, Request::options(query, "weapi") - ); + ); } // 订阅与取消电台 @@ -1583,9 +1569,9 @@ QVariantMap Api::djRadio_top(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/expert/worksdata/works/top/get", + "/api/expert/worksdata/works/top/get", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -1755,7 +1741,7 @@ QVariantMap Api::follow(QVariantMap query) { + query["id"].toString(), {}, Request::options(query, "weapi") - ); + ); } // 根据nickname获取userid @@ -1996,7 +1982,7 @@ QVariantMap Api::listentogether_status(QVariantMap query) { "https://music.163.com/api/listen/together/status/get", {}, Request::options(query, "weapi") - ); + ); } // 一起听 更新播放列表 @@ -2141,7 +2127,7 @@ QVariantMap Api::login_refresh(QVariantMap query) { "https://music.163.com/weapi/login/token/refresh", {}, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) - ); + ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); body["cookie"] = result["cookie"]; @@ -2161,7 +2147,7 @@ QVariantMap Api::login_status(QVariantMap query) { "/api/w/nuser/account/get", {}, Request::options(query) - ); + ); if (result["body"].toMap()["code"] == 200) { auto body = result["body"].toMap(); body["cookie"] = result["cookie"]; @@ -2185,7 +2171,7 @@ QVariantMap Api::logout(QVariantMap query) { "https://music.163.com/weapi/logout", {}, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) - ); + ); } // 新版歌词 - 包含逐字歌词 @@ -2370,9 +2356,9 @@ QVariantMap Api::music_first_listen_info(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/api/content/activity/music/first/listen/info", + "/api/content/activity/music/first/listen/info", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -2391,9 +2377,9 @@ QVariantMap Api::mv_all(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/api/mv/all", + "/api/mv/all", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -2433,9 +2419,9 @@ QVariantMap Api::mv_exclusive_rcmd(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/api/mv/exclusive/rcmd", + "/api/mv/exclusive/rcmd", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -2449,9 +2435,9 @@ QVariantMap Api::mv_first(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/mv/first", + "/api/mv/first", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -2537,7 +2523,7 @@ QVariantMap Api::personal_fm(QVariantMap query) { "https://music.163.com/weapi/v1/radio/get", {}, Request::options(query, "weapi") - ); + ); } // 推荐电台 @@ -2547,7 +2533,7 @@ QVariantMap Api::personalized_djprogram(QVariantMap query) { "https://music.163.com/weapi/personalized/djprogram", {}, Request::options(query, "weapi") - ); + ); } // 推荐MV @@ -2557,7 +2543,7 @@ QVariantMap Api::personalized_mv(QVariantMap query) { "https://music.163.com/weapi/personalized/mv", {}, Request::options(query, "weapi") - ); + ); } // 推荐新歌 @@ -2601,7 +2587,7 @@ QVariantMap Api::personalized_privatecontent(QVariantMap query) { "https://music.163.com/weapi/personalized/privatecontent", {}, Request::options(query, "weapi") - ); + ); } // 推荐歌单 @@ -2627,7 +2613,7 @@ QVariantMap Api::pl_count(QVariantMap query) { "/api/pl/count", {}, Request::options(query) - ); + ); } // 全部歌单分类 @@ -2637,7 +2623,7 @@ QVariantMap Api::playlist_catlist(QVariantMap query) { "https://music.163.com/weapi/playlist/catalogue", {}, Request::options(query, "weapi") - ); + ); } // 歌单封面上传 @@ -2660,7 +2646,7 @@ QVariantMap Api::playlist_cover_update(QVariantMap query) { { "coverImgId", uploadInfo["imgId"] } }, Request::options(query, "weapi") - ); + ); return { { "status", 200 }, { "body", QVariantMap { @@ -2768,7 +2754,7 @@ QVariantMap Api::playlist_hot(QVariantMap query) { "https://music.163.com/weapi/playlist/hottags", {}, Request::options(query, "weapi") - ); + ); } // 获取点赞过的视频 @@ -2999,7 +2985,7 @@ QVariantMap Api::playlist_tracks(QVariantMap query) { { "trackIds", QJsonDocument::fromVariant(tracks + tracks).toJson() }, // 歌曲id { "imme", "true" }, }, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } else { @@ -3096,7 +3082,7 @@ QVariantMap Api::program_recommend(QVariantMap query) { POST, "https://music.163.com/weapi/program/recommend/v1", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3123,7 +3109,7 @@ QVariantMap Api::recent_listen_list(QVariantMap query) { "/api/pc/recent/listen/list", {}, Request::options(query) - ); + ); } // 每日推荐歌单 @@ -3133,7 +3119,7 @@ QVariantMap Api::recommend_resource(QVariantMap query) { "https://music.163.com/weapi/v1/discovery/recommend/resource", {}, Request::options(query, "weapi") - ); + ); } // 每日推荐歌曲-不感兴趣 @@ -3326,7 +3312,7 @@ QVariantMap Api::related_playlist(QVariantMap query) { "https://music.163.com/playlist?id=" + query["id"].toString(), {}, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) - ); + ); QRegularExpression pattern("
[\\s\\S]*?[\\s\\S]*?]*>([^<]+?)<\\/a>[\\s\\S]*?]*>([^<]+?)<\\/a>"); QRegularExpressionMatchIterator it = pattern.globalMatch(result["body"].toString()); QJsonArray playlists; @@ -3380,7 +3366,7 @@ QVariantMap Api::resource_like(QVariantMap query) { POST, "https://music.163.com/weapi/resource/" + query["t"].toString(), data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3418,7 +3404,7 @@ QVariantMap Api::search_default(QVariantMap query) { "/api/search/defaultkeyword/get", {}, Request::options(query) - ); + ); } // 热搜列表 @@ -3427,8 +3413,8 @@ QVariantMap Api::search_hot_detail(QVariantMap query) { POST, "https://music.163.com/weapi/hotsearchlist/get", {}, -Request::options(query, "weapi") - ); + Request::options(query, "weapi") + ); } // 热搜列表 @@ -3476,7 +3462,7 @@ QVariantMap Api::search_multimatch(QVariantMap query) { POST, "https://music.163.com/weapi/search/suggest/multimatch", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3490,7 +3476,7 @@ QVariantMap Api::search_suggest(QVariantMap query) { POST, "https://music.163.com/weapi/search/suggest/" + type, data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3507,7 +3493,7 @@ QVariantMap Api::search(QVariantMap query) { POST, "https://music.163.com/api/search/voice/get", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } QVariantMap cookie = query["cookie"].toMap(); @@ -3555,7 +3541,7 @@ QVariantMap Api::send_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/msg/private/send", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3586,7 +3572,7 @@ QVariantMap Api::send_text(QVariantMap query) { POST, "https://music.163.com/weapi/msg/private/send", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3597,7 +3583,7 @@ QVariantMap Api::setting(QVariantMap query) { POST, "https://music.163.com/api/user/setting", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3612,7 +3598,7 @@ QVariantMap Api::share_resource(QVariantMap query) { POST, "https://music.163.com/weapi/share/friends/resource", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3676,7 +3662,7 @@ QVariantMap Api::simi_artist(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiArtist", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3689,7 +3675,7 @@ QVariantMap Api::simi_mv(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiMV", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3704,7 +3690,7 @@ QVariantMap Api::simi_playlist(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiPlaylist", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3719,7 +3705,7 @@ QVariantMap Api::simi_song(QVariantMap query) { POST, "https://music.163.com/weapi/v1/discovery/simiSong", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3734,7 +3720,7 @@ QVariantMap Api::simi_user(QVariantMap query) { POST, "https://music.163.com/weapi/discovery/simiUser", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3890,7 +3876,7 @@ QVariantMap Api::song_purchased(QVariantMap query) { POST, "https://music.163.com/weapi/single/mybought/song/list", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3919,7 +3905,7 @@ QVariantMap Api::style_album(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/album", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3935,7 +3921,7 @@ QVariantMap Api::style_artist(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/artist", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3948,7 +3934,7 @@ QVariantMap Api::style_detail(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/head", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3959,7 +3945,7 @@ QVariantMap Api::style_list(QVariantMap query) { POST, "https://music.163.com/api/tag/list/get", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3975,7 +3961,7 @@ QVariantMap Api::style_playlist(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/playlist", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -3986,7 +3972,7 @@ QVariantMap Api::style_preference(QVariantMap query) { POST, "https://music.163.com/api/tag/my/preference/get", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -4002,7 +3988,7 @@ QVariantMap Api::style_song(QVariantMap query) { POST, "https://music.163.com/api/style-tag/home/song", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -4088,9 +4074,9 @@ QVariantMap Api::top_list(QVariantMap query) { }; return request( POST, - "https://interface3.music.163.com/api/playlist/v4/detail", + "/api/playlist/v4/detail", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4226,7 +4212,7 @@ QVariantMap Api::toplist_detail(QVariantMap query) { "https://music.163.com/weapi/toplist/detail", {}, Request::options(query, "weapi") - ); + ); } // 所有榜单介绍 @@ -4236,7 +4222,7 @@ QVariantMap Api::toplist(QVariantMap query) { "/api/toplist", {}, Request::options(query) - ); + ); } // 专辑简要百科信息 @@ -4298,7 +4284,7 @@ QVariantMap Api::ugc_detail(QVariantMap query) { POST, "https://music.163.com/weapi/rep/ugc/detail", data, -Request::options(query, "weapi") + Request::options(query, "weapi") ); } @@ -4439,7 +4425,7 @@ QVariantMap Api::user_detail(QVariantMap query) { "https://music.163.com/weapi/v1/user/detail/" + query["uid"].toString(), {}, Request::options(query, "weapi") - ); + ); } // 用户电台节目 @@ -4568,7 +4554,7 @@ QVariantMap Api::user_subcount(QVariantMap query) { "https://music.163.com/weapi/subcount", {}, Request::options(query, "weapi") - ); + ); } // 编辑用户信息 @@ -4794,9 +4780,9 @@ QVariantMap Api::voice_delete(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/api/content/voice/delete", + "/api/content/voice/delete", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4807,9 +4793,9 @@ QVariantMap Api::voice_detail(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/voice/workbench/voice/detail", + "/api/voice/workbench/voice/detail", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4839,9 +4825,9 @@ QVariantMap Api::voicelist_list_search(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/api/voice/workbench/voice/list", + "/api/voice/workbench/voice/list", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4854,9 +4840,9 @@ QVariantMap Api::voicelist_list(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/voice/workbench/voices/by/voicelist", + "/api/voice/workbench/voices/by/voicelist", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4867,9 +4853,9 @@ QVariantMap Api::voicelist_detail(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/voice/workbench/voicelist/detail", + "/api/voice/workbench/voicelist/detail", data, -Request::options(query, "weapi") + Request::options(query) ); } @@ -4883,9 +4869,9 @@ QVariantMap Api::voicelist_search(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/weapi/voice/workbench/voicelist/search", + "/api/voice/workbench/voicelist/search", data, - Request::options(query, "weapi") + Request::options(query) ); } @@ -4900,9 +4886,9 @@ QVariantMap Api::voicelist_trans(QVariantMap query) { }; return request( POST, - "https://interface.music.163.com/api/voice/workbench/radio/program/trans", + "/api/voice/workbench/radio/program/trans", data, - Request::options(query, "weapi") + Request::options(query) ); } From 2a5181c85db07d52145610b0fab28052a114e04b Mon Sep 17 00:00:00 2001 From: overwriter <9856mmm@gmail.com> Date: Wed, 26 Jun 2024 22:08:06 +0800 Subject: [PATCH 5/5] =?UTF-8?q?refactor:=20=E7=B2=BE=E7=AE=80weapi?= =?UTF-8?q?=E7=9A=84=E9=93=BE=E6=8E=A5=EF=BC=8C=E7=BB=9F=E4=B8=80=E4=BD=BF?= =?UTF-8?q?=E7=94=A8uri?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- QCloudMusicApi/module.cpp | 428 ++++++++++++++++---------------- QCloudMusicApi/plugins.cpp | 24 +- QCloudMusicApi/util/request.cpp | 17 +- 3 files changed, 226 insertions(+), 243 deletions(-) diff --git a/QCloudMusicApi/module.cpp b/QCloudMusicApi/module.cpp index b99affc..09e1359 100644 --- a/QCloudMusicApi/module.cpp +++ b/QCloudMusicApi/module.cpp @@ -92,7 +92,7 @@ QVariantMap Api::album_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/vipmall/albumproduct/detail", + "/api/vipmall/albumproduct/detail", data, Request::options(query, "weapi") ); @@ -108,7 +108,7 @@ QVariantMap Api::album_list_style(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/vipmall/appalbum/album/style", + "/api/vipmall/appalbum/album/style", data, Request::options(query, "weapi") ); @@ -125,7 +125,7 @@ QVariantMap Api::album_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/vipmall/albumproduct/list", + "/api/vipmall/albumproduct/list", data, Request::options(query, "weapi") ); @@ -151,7 +151,7 @@ QVariantMap Api::album_new(QVariantMap query) { QVariantMap Api::album_newest(QVariantMap query) { return request( POST, - "https://music.163.com/api/discovery/newAlbum", + "/api/discovery/newAlbum", {}, Request::options(query, "weapi") ); @@ -179,7 +179,7 @@ QVariantMap Api::album_songsaleboard(QVariantMap query) { if (type == "year") data["year"] = query["year"]; return request( POST, - "https://music.163.com/api/feealbum/songsaleboard/" + type + "/type", + "/api/feealbum/songsaleboard/" + type + "/type", data, Request::options(query, "weapi") ); @@ -193,7 +193,7 @@ QVariantMap Api::album_sub(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/album/" + query["t"].toString(), + "/api/album/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -208,7 +208,7 @@ QVariantMap Api::album_sublist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/album/sublist", + "/api/album/sublist", data, Request::options(query, "weapi") ); @@ -218,7 +218,7 @@ QVariantMap Api::album_sublist(QVariantMap query) { QVariantMap Api::album(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/v1/album/" + query["id"].toString(), + "/api/v1/album/" + query["id"].toString(), {}, Request::options(query, "weapi") ); @@ -233,7 +233,7 @@ QVariantMap Api::artist_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/albums/" + query["id"].toString(), + "/api/artist/albums/" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -246,7 +246,7 @@ QVariantMap Api::artist_desc(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/introduction", + "/api/artist/introduction", data, Request::options(query, "weapi") ); @@ -272,7 +272,7 @@ QVariantMap Api::artist_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/artist/head/info/get", + "/api/artist/head/info/get", data, Request::options(query, "weapi") ); @@ -287,7 +287,7 @@ QVariantMap Api::artist_fans(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/fans/get", + "/api/artist/fans/get", data, Request::options(query, "weapi") ); @@ -300,7 +300,7 @@ QVariantMap Api::artist_follow_count(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/follow/count/get", + "/api/artist/follow/count/get", data, Request::options(query, "weapi") ); @@ -335,7 +335,7 @@ QVariantMap Api::artist_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/artist/list", + "/api/v1/artist/list", data, Request::options(query, "weapi") ); @@ -351,7 +351,7 @@ QVariantMap Api::artist_mv(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/mvs", + "/api/artist/mvs", data, Request::options(query, "weapi") ); @@ -365,7 +365,7 @@ QVariantMap Api::artist_new_mv(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/sub/artist/new/works/mv/list", + "/api/sub/artist/new/works/mv/list", data, Request::options(query, "weapi") ); @@ -379,7 +379,7 @@ QVariantMap Api::artist_new_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/sub/artist/new/works/song/list", + "/api/sub/artist/new/works/song/list", data, Request::options(query, "weapi") ); @@ -401,7 +401,7 @@ QVariantMap Api::artist_songs(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/artist/songs", + "/api/v1/artist/songs", data, Request::options(query, "weapi") ); @@ -416,7 +416,7 @@ QVariantMap Api::artist_sub(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/" + query["t"].toString(), + "/api/artist/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -431,7 +431,7 @@ QVariantMap Api::artist_sublist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/sublist", + "/api/artist/sublist", data, Request::options(query, "weapi") ); @@ -444,7 +444,7 @@ QVariantMap Api::artist_top_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/artist/top/song", + "/api/artist/top/song", data, Request::options(query, "weapi") ); @@ -463,7 +463,7 @@ QVariantMap Api::artist_video(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/mlog/artist/video", + "/api/mlog/artist/video", data, Request::options(query, "weapi") ); @@ -473,7 +473,7 @@ QVariantMap Api::artist_video(QVariantMap query) { QVariantMap Api::artists(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/v1/artist/" + query["id"].toString(), + "/api/v1/artist/" + query["id"].toString(), {}, Request::options(query, "weapi") ); @@ -504,7 +504,7 @@ QVariantMap Api::audio_match(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/music/audio/match", + "/api/music/audio/match", data, Request::options(query, "weapi") ); @@ -515,7 +515,7 @@ QVariantMap Api::avatar_upload(QVariantMap query) { auto uploadInfo = QCloudMusicApi::Plugins::upload(query); const QVariantMap res = request( POST, - "https://music.163.com/weapi/user/avatar/upload/v1", + "/api/user/avatar/upload/v1", { { "imgid", uploadInfo["imgId"] } }, @@ -578,7 +578,7 @@ QVariantMap Api::calendar(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/mcalendar/detail", + "/api/mcalendar/detail", data, Request::options(query, "weapi") ); @@ -592,7 +592,7 @@ QVariantMap Api::captcha_sent(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/sms/captcha/sent", + "/api/sms/captcha/sent", data, Request::options(query, "weapi") ); @@ -607,7 +607,7 @@ QVariantMap Api::captcha_verify(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/sms/captcha/verify", + "/api/sms/captcha/verify", data, Request::options(query, "weapi") ); @@ -635,7 +635,7 @@ QVariantMap Api::check_music(QVariantMap query) { }; QVariantMap result = request( POST, - "https://music.163.com/weapi/song/enhance/player/url", + "/api/song/enhance/player/url", data, Request::options(query, "weapi") ); @@ -672,7 +672,7 @@ QVariantMap Api::cloud_match(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/cloud/user/song/match", + "/api/cloud/user/song/match", data, Request::options(query, "weapi") ); @@ -749,7 +749,7 @@ QVariantMap Api::cloud(QVariantMap query) { const auto tokenRes = request( POST, - "https://music.163.com/weapi/nos/token/alloc", + "/api/nos/token/alloc", { { "bucket", "" }, { "ext", ext }, @@ -826,7 +826,7 @@ QVariantMap Api::comment_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/resource/comments/R_AL_3_" + query["id"].toString(), + "/api/v1/resource/comments/R_AL_3_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -846,7 +846,7 @@ QVariantMap Api::comment_dj(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/comments/A_DJ_1_" + query["id"].toString(), + "/api/v1/resource/comments/A_DJ_1_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -861,7 +861,7 @@ QVariantMap Api::comment_event(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/comments/" + query["threadId"].toString(), + "/api/v1/resource/comments/" + query["threadId"].toString(), data, Request::options(query, "weapi") ); @@ -878,7 +878,7 @@ QVariantMap Api::comment_floor(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/resource/comment/floor/get", + "/api/resource/comment/floor/get", data, Request::options(query, "weapi") ); @@ -899,7 +899,7 @@ QVariantMap Api::comment_hot(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/hotcomments/" + query["type"].toString() + query["id"].toString(), + "/api/v1/resource/hotcomments/" + query["type"].toString() + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -943,7 +943,7 @@ QVariantMap Api::comment_like(QVariantMap query) { } return request( POST, - "https://music.163.com/weapi/v1/comment/" + query["t"].toString(), + "/api/v1/comment/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -963,7 +963,7 @@ QVariantMap Api::comment_music(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/resource/comments/R_SO_4_" + query["id"].toString(), + "/api/v1/resource/comments/R_SO_4_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -983,7 +983,7 @@ QVariantMap Api::comment_mv(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/comments/R_MV_5_" + query["id"].toString(), + "/api/v1/resource/comments/R_MV_5_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -1047,7 +1047,7 @@ QVariantMap Api::comment_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/comments/A_PL_0_" + query["id"].toString(), + "/api/v1/resource/comments/A_PL_0_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -1067,7 +1067,7 @@ QVariantMap Api::comment_video(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/resource/comments/R_VI_62_" + query["id"].toString(), + "/api/v1/resource/comments/R_VI_62_" + query["id"].toString(), data, Request::options(query, "weapi") ); @@ -1098,7 +1098,7 @@ QVariantMap Api::comment(QVariantMap query) { } return request( POST, - "https://music.163.com/weapi/resource/comments/" + query["t"].toString(), + "/api/resource/comments/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -1140,7 +1140,7 @@ QVariantMap Api::daily_signin(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/point/dailyTask", + "/api/point/dailyTask", data, Request::options(query, "weapi") ); @@ -1153,7 +1153,7 @@ QVariantMap Api::digitalAlbum_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/vipmall/albumproduct/detail", + "/api/vipmall/albumproduct/detail", data, Request::options(query, "weapi") ); @@ -1173,7 +1173,7 @@ QVariantMap Api::digitalAlbum_ordering(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/ordering/web/digital", + "/api/ordering/web/digital", data, Request::options(query, "weapi") ); @@ -1188,7 +1188,7 @@ QVariantMap Api::digitalAlbum_purchased(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/digitalAlbum/purchased", + "/api/digitalAlbum/purchased", data, Request::options(query, "weapi") ); @@ -1201,7 +1201,7 @@ QVariantMap Api::digitalAlbum_sales(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/vipmall/albumproduct/album/query/sales", + "/api/vipmall/albumproduct/album/query/sales", data, Request::options(query, "weapi") ); @@ -1215,7 +1215,7 @@ QVariantMap Api::dj_banner(QVariantMap query) { query["cookie"] = cookie; return request( POST, - "https://music.163.com/weapi/djradio/banner/get", + "/api/djradio/banner/get", {}, Request::options(query, "weapi") ); @@ -1226,7 +1226,7 @@ QVariantMap Api::dj_category_excludehot(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/weapi/djradio/category/excludehot", + "/api/djradio/category/excludehot", data, Request::options(query, "weapi") ); @@ -1237,7 +1237,7 @@ QVariantMap Api::dj_category_recommend(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/weapi/djradio/home/category/recommend", + "/api/djradio/home/category/recommend", data, Request::options(query, "weapi") ); @@ -1248,7 +1248,7 @@ QVariantMap Api::dj_catelist(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/weapi/djradio/category/get", + "/api/djradio/category/get", data, Request::options(query, "weapi") ); @@ -1261,7 +1261,7 @@ QVariantMap Api::dj_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/v2/get", + "/api/djradio/v2/get", data, Request::options(query, "weapi") ); @@ -1275,7 +1275,7 @@ QVariantMap Api::dj_hot(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/hot/v1", + "/api/djradio/hot/v1", data, Request::options(query, "weapi") ); @@ -1289,7 +1289,7 @@ QVariantMap Api::dj_paygift(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/home/paygift/list?_nmclfl=1", + "/api/djradio/home/paygift/list?_nmclfl=1", data, Request::options(query, "weapi") ); @@ -1302,7 +1302,7 @@ QVariantMap Api::dj_personalize_recommend(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/personalize/rcmd", + "/api/djradio/personalize/rcmd", data, Request::options(query, "weapi") ); @@ -1315,7 +1315,7 @@ QVariantMap Api::dj_program_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/dj/program/detail", + "/api/dj/program/detail", data, Request::options(query, "weapi") ); @@ -1329,7 +1329,7 @@ QVariantMap Api::dj_program_toplist_hours(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djprogram/toplist/hours", + "/api/djprogram/toplist/hours", data, Request::options(query, "weapi") ); @@ -1343,7 +1343,7 @@ QVariantMap Api::dj_program_toplist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/program/toplist/v1", + "/api/program/toplist/v1", data, Request::options(query, "weapi") ); @@ -1359,7 +1359,7 @@ QVariantMap Api::dj_program(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/dj/program/byradio", + "/api/dj/program/byradio", data, Request::options(query, "weapi") ); @@ -1374,7 +1374,7 @@ QVariantMap Api::dj_radio_hot(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/hot", + "/api/djradio/hot", data, Request::options(query, "weapi") ); @@ -1410,7 +1410,7 @@ QVariantMap Api::dj_recommend_type(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/recommend", + "/api/djradio/recommend", data, Request::options(query, "weapi") ); @@ -1420,7 +1420,7 @@ QVariantMap Api::dj_recommend_type(QVariantMap query) { QVariantMap Api::dj_recommend(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/djradio/recommend/v1", + "/api/djradio/recommend/v1", {}, Request::options(query, "weapi") ); @@ -1434,7 +1434,7 @@ QVariantMap Api::dj_sub(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/" + query["t"].toString(), + "/api/djradio/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -1449,7 +1449,7 @@ QVariantMap Api::dj_sublist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/get/subed", + "/api/djradio/get/subed", data, Request::options(query, "weapi") ); @@ -1465,7 +1465,7 @@ QVariantMap Api::dj_subscriber(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/subscriber", + "/api/djradio/subscriber", data, Request::options(query, "weapi") ); @@ -1478,7 +1478,7 @@ QVariantMap Api::dj_today_perfered(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/home/today/perfered", + "/api/djradio/home/today/perfered", data, Request::options(query, "weapi") ); @@ -1492,7 +1492,7 @@ QVariantMap Api::dj_toplist_hours(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/dj/toplist/hours", + "/api/dj/toplist/hours", data, Request::options(query, "weapi") ); @@ -1506,7 +1506,7 @@ QVariantMap Api::dj_toplist_newcomer(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/dj/toplist/newcomer", + "/api/dj/toplist/newcomer", data, Request::options(query, "weapi") ); @@ -1520,7 +1520,7 @@ QVariantMap Api::dj_toplist_pay(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/toplist/pay", + "/api/djradio/toplist/pay", data, Request::options(query, "weapi") ); @@ -1534,7 +1534,7 @@ QVariantMap Api::dj_toplist_popular(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/dj/toplist/popular", + "/api/dj/toplist/popular", data, Request::options(query, "weapi") ); @@ -1553,7 +1553,7 @@ QVariantMap Api::dj_toplist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/djradio/toplist", + "/api/djradio/toplist", data, Request::options(query, "weapi") ); @@ -1612,7 +1612,7 @@ QVariantMap Api::event_del(QVariantMap query) { }; return request( POST, - "https://music.163.com/eapi/event/delete", + "/api/event/delete", data, Request::options(query, "weapi") ); @@ -1631,7 +1631,7 @@ QVariantMap Api::event_forward(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/event/forward", + "/api/event/forward", data, Request::options(query, "weapi") ); @@ -1645,7 +1645,7 @@ QVariantMap Api::event(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/event/get", + "/api/v1/event/get", data, Request::options(query, "weapi") ); @@ -1717,7 +1717,7 @@ QVariantMap Api::fm_trash(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/radio/trash/add?alg=RT&songId=" + "/api/radio/trash/add?alg=RT&songId=" + query["id"].toString() + QStringLiteral("&time=") + query.value("time", 25).toString(), @@ -1735,7 +1735,7 @@ QVariantMap Api::follow(QVariantMap query) { query["t"] = query["t"] == 1 ? "follow" : "delfollow"; return request( POST, - "https://music.163.com/weapi/user/" + "/api/user/" + query["t"].toString() + QStringLiteral("/") + query["id"].toString(), @@ -1751,7 +1751,7 @@ QVariantMap Api::get_userids(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/user/getUserIds", + "/api/user/getUserIds", data, Request::options(query, "weapi") ); @@ -1767,7 +1767,7 @@ QVariantMap Api::history_recommend_songs_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/discovery/recommend/songs/history/detail", + "/api/discovery/recommend/songs/history/detail", data, Request::options(query, "weapi") ); @@ -1781,7 +1781,7 @@ QVariantMap Api::history_recommend_songs(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/api/discovery/recommend/songs/history/recent", + "/api/discovery/recommend/songs/history/recent", data, Request::options(query, "weapi") ); @@ -1797,7 +1797,7 @@ QVariantMap Api::homepage_block_page(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/homepage/block/page", + "/api/homepage/block/page", data, Request::options(query, "weapi") ); @@ -1825,7 +1825,7 @@ QVariantMap Api::hot_topic(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/act/hot", + "/api/act/hot", data, Request::options(query, "weapi") ); @@ -1863,7 +1863,7 @@ QVariantMap Api::like(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/radio/like", + "/api/radio/like", data, Request::options(query, "weapi") ); @@ -1876,7 +1876,7 @@ QVariantMap Api::likelist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/song/like/get", + "/api/song/like/get", data, Request::options(query, "weapi") ); @@ -1979,7 +1979,7 @@ QVariantMap Api::listentogether_room_create(QVariantMap query) { QVariantMap Api::listentogether_status(QVariantMap query) { return request( POST, - "https://music.163.com/api/listen/together/status/get", + "/api/listen/together/status/get", {}, Request::options(query, "weapi") ); @@ -2044,7 +2044,7 @@ QVariantMap Api::login_cellphone(QVariantMap query) { }; QVariantMap result = request( POST, - "https://music.163.com/weapi/login/cellphone", + "/api/login/cellphone", data, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); @@ -2068,7 +2068,7 @@ QVariantMap Api::login_qr_check(QVariantMap query) { }; QVariantMap result = request( POST, - "https://music.163.com/weapi/login/qrcode/client/login", + "/api/login/qrcode/client/login", data, Request::options(query, "weapi") ); @@ -2089,7 +2089,7 @@ QVariantMap Api::login_qr_key(QVariantMap query) { }; QVariantMap result = request( POST, - "https://music.163.com/weapi/login/qrcode/unikey", + "/api/login/qrcode/unikey", data, Request::options(query, "weapi") ); @@ -2124,7 +2124,7 @@ QVariantMap Api::login_qr_create(QVariantMap query) { QVariantMap Api::login_refresh(QVariantMap query) { QVariantMap result = request( POST, - "https://music.163.com/weapi/login/token/refresh", + "/api/login/token/refresh", {}, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); @@ -2168,7 +2168,7 @@ QVariantMap Api::login_status(QVariantMap query) { QVariantMap Api::logout(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/logout", + "/api/logout", {}, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "pc" } }) ); @@ -2241,7 +2241,7 @@ QVariantMap Api::mlog_to_video(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/mlog/video/convert/id", + "/api/mlog/video/convert/id", data, Request::options(query, "weapi") ); @@ -2256,7 +2256,7 @@ QVariantMap Api::mlog_url(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/mlog/detail/v1", + "/api/mlog/detail/v1", data, Request::options(query, "weapi") ); @@ -2272,7 +2272,7 @@ QVariantMap Api::msg_comments(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/user/comments/" + query["uid"].toString(), + "/api/v1/user/comments/" + query["uid"].toString(), data, Request::options(query, "weapi") ); @@ -2287,7 +2287,7 @@ QVariantMap Api::msg_forwards(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/forwards/get", + "/api/forwards/get", data, Request::options(query, "weapi") ); @@ -2301,7 +2301,7 @@ QVariantMap Api::msg_notices(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/msg/notices", + "/api/msg/notices", data, Request::options(query, "weapi") ); @@ -2317,7 +2317,7 @@ QVariantMap Api::msg_private_history(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/msg/private/history", + "/api/msg/private/history", data, Request::options(query, "weapi") ); @@ -2332,7 +2332,7 @@ QVariantMap Api::msg_private(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/msg/private/users", + "/api/msg/private/users", data, Request::options(query, "weapi") ); @@ -2343,7 +2343,7 @@ QVariantMap Api::msg_recentcontact(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/msg/recentcontact/get", + "/api/msg/recentcontact/get", data, Request::options(query, "weapi") ); @@ -2391,7 +2391,7 @@ QVariantMap Api::mv_detail_info(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/comment/commentthread/info", + "/api/comment/commentthread/info", data, Request::options(query, "weapi") ); @@ -2405,7 +2405,7 @@ QVariantMap Api::mv_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/mv/detail", + "/api/v1/mv/detail", data, Request::options(query, "weapi") ); @@ -2450,7 +2450,7 @@ QVariantMap Api::mv_sub(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/mv/" + query["t"].toString(), + "/api/mv/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -2465,7 +2465,7 @@ QVariantMap Api::mv_sublist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloudvideo/allvideo/sublist", + "/api/cloudvideo/allvideo/sublist", data, Request::options(query, "weapi") ); @@ -2479,7 +2479,7 @@ QVariantMap Api::mv_url(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/song/enhance/play/mv/url", + "/api/song/enhance/play/mv/url", data, Request::options(query, "weapi") ); @@ -2492,7 +2492,7 @@ QVariantMap Api::nickname_check(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/nickname/duplicated", + "/api/nickname/duplicated", data, Request::options(query, "weapi") ); @@ -2520,7 +2520,7 @@ QVariantMap Api::personal_fm_mode(QVariantMap query) { QVariantMap Api::personal_fm(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/v1/radio/get", + "/api/v1/radio/get", {}, Request::options(query, "weapi") ); @@ -2530,7 +2530,7 @@ QVariantMap Api::personal_fm(QVariantMap query) { QVariantMap Api::personalized_djprogram(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/personalized/djprogram", + "/api/personalized/djprogram", {}, Request::options(query, "weapi") ); @@ -2540,7 +2540,7 @@ QVariantMap Api::personalized_djprogram(QVariantMap query) { QVariantMap Api::personalized_mv(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/personalized/mv", + "/api/personalized/mv", {}, Request::options(query, "weapi") ); @@ -2559,7 +2559,7 @@ QVariantMap Api::personalized_newsong(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/personalized/newsong", + "/api/personalized/newsong", data, Request::options(query, "weapi") ); @@ -2574,7 +2574,7 @@ QVariantMap Api::personalized_privatecontent_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v2/privatecontent/list", + "/api/v2/privatecontent/list", data, Request::options(query, "weapi") ); @@ -2584,7 +2584,7 @@ QVariantMap Api::personalized_privatecontent_list(QVariantMap query) { QVariantMap Api::personalized_privatecontent(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/personalized/privatecontent", + "/api/personalized/privatecontent", {}, Request::options(query, "weapi") ); @@ -2600,7 +2600,7 @@ QVariantMap Api::personalized(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/personalized/playlist", + "/api/personalized/playlist", data, Request::options(query, "weapi") ); @@ -2620,7 +2620,7 @@ QVariantMap Api::pl_count(QVariantMap query) { QVariantMap Api::playlist_catlist(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/playlist/catalogue", + "/api/playlist/catalogue", {}, Request::options(query, "weapi") ); @@ -2640,7 +2640,7 @@ QVariantMap Api::playlist_cover_update(QVariantMap query) { const auto uploadInfo = QCloudMusicApi::Plugins::upload(query); const auto res = request( POST, - "https://music.163.com/weapi/playlist/cover/update", + "/api/playlist/cover/update", { { "id", query["id"] }, { "coverImgId", uploadInfo["imgId"] } @@ -2669,7 +2669,7 @@ QVariantMap Api::playlist_create(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/create", + "/api/playlist/create", data, Request::options(query, "weapi") ); @@ -2686,7 +2686,7 @@ QVariantMap Api::playlist_delete(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/playlist/remove", + "/api/playlist/remove", data, Request::options(query, "weapi") ); @@ -2741,7 +2741,7 @@ QVariantMap Api::playlist_highquality_tags(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/playlist/highquality/tags", + "/api/playlist/highquality/tags", data, Request::options(query, "weapi") ); @@ -2751,7 +2751,7 @@ QVariantMap Api::playlist_highquality_tags(QVariantMap query) { QVariantMap Api::playlist_hot(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/playlist/hottags", + "/api/playlist/hottags", {}, Request::options(query, "weapi") ); @@ -2765,7 +2765,7 @@ QVariantMap Api::playlist_mylike(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/mlog/playlist/mylike/bytime/get", + "/api/mlog/playlist/mylike/bytime/get", data, Request::options(query, "weapi") ); @@ -2796,7 +2796,7 @@ QVariantMap Api::playlist_order_update(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/order/update", + "/api/playlist/order/update", data, Request::options(query, "weapi") ); @@ -2824,7 +2824,7 @@ QVariantMap Api::playlist_subscribe(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/" + query["t"].toString(), + "/api/playlist/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -2839,7 +2839,7 @@ QVariantMap Api::playlist_subscribers(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/subscribers", + "/api/playlist/subscribers", data, Request::options(query, "weapi") ); @@ -2882,7 +2882,7 @@ QVariantMap Api::playlist_track_add(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/track/add", + "/api/playlist/track/add", data, Request::options(query, "weapi") ); @@ -2947,7 +2947,7 @@ QVariantMap Api::playlist_track_delete(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/track/delete", + "/api/playlist/track/delete", data, Request::options(query, "weapi") ); @@ -2964,7 +2964,7 @@ QVariantMap Api::playlist_tracks(QVariantMap query) { }; auto res = request( POST, - "https://music.163.com/weapi/playlist/manipulate/tracks", + "/api/playlist/manipulate/tracks", data, Request::options(query, "weapi") ); @@ -2978,7 +2978,7 @@ QVariantMap Api::playlist_tracks(QVariantMap query) { else if (code == 512) { return request( POST, - "https://music.163.com/api/playlist/manipulate/tracks", + "/api/playlist/manipulate/tracks", { { "op", query["op"] }, // del,add { "pid", query["pid"] }, // 歌单id @@ -3003,7 +3003,7 @@ QVariantMap Api::playlist_update_playcount(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/update/playcount", + "/api/playlist/update/playcount", data, Request::options(query, "weapi") ); @@ -3024,7 +3024,7 @@ QVariantMap Api::playlist_update(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/batch", + "/api/batch", data, Request::options(query, "weapi") ); @@ -3035,7 +3035,7 @@ QVariantMap Api::playlist_video_recent(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/playlist/video/recent", + "/api/playlist/video/recent", data, Request::options(query, "weapi") ); @@ -3052,7 +3052,7 @@ QVariantMap Api::playmode_intelligence_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/playmode/intelligence/list", + "/api/playmode/intelligence/list", data, Request::options(query, "weapi") ); @@ -3080,7 +3080,7 @@ QVariantMap Api::program_recommend(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/program/recommend/v1", + "/api/program/recommend/v1", data, Request::options(query, "weapi") ); @@ -3096,7 +3096,7 @@ QVariantMap Api::rebind(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/user/replaceCellphone", + "/api/user/replaceCellphone", data, Request::options(query, "weapi") ); @@ -3116,7 +3116,7 @@ QVariantMap Api::recent_listen_list(QVariantMap query) { QVariantMap Api::recommend_resource(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/v1/discovery/recommend/resource", + "/api/v1/discovery/recommend/resource", {}, Request::options(query, "weapi") ); @@ -3131,7 +3131,7 @@ QVariantMap Api::recommend_songs_dislike(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v2/discovery/recommend/dislike", + "/api/v2/discovery/recommend/dislike", data, Request::options(query, "weapi") ); @@ -3145,7 +3145,7 @@ QVariantMap Api::recommend_songs(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/v3/discovery/recommend/songs", + "/api/v3/discovery/recommend/songs", data, Request::options(query, "weapi") ); @@ -3158,7 +3158,7 @@ QVariantMap Api::record_recent_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/album/list", + "/api/play-record/album/list", data, Request::options(query, "weapi") ); @@ -3171,7 +3171,7 @@ QVariantMap Api::record_recent_dj(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/djradio/list", + "/api/play-record/djradio/list", data, Request::options(query, "weapi") ); @@ -3184,7 +3184,7 @@ QVariantMap Api::record_recent_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/playlist/list", + "/api/play-record/playlist/list", data, Request::options(query, "weapi") ); @@ -3197,7 +3197,7 @@ QVariantMap Api::record_recent_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/song/list", + "/api/play-record/song/list", data, Request::options(query, "weapi") ); @@ -3210,7 +3210,7 @@ QVariantMap Api::record_recent_video(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/newvideo/list", + "/api/play-record/newvideo/list", data, Request::options(query, "weapi") ); @@ -3223,7 +3223,7 @@ QVariantMap Api::record_recent_voice(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/play-record/voice/list", + "/api/play-record/voice/list", data, Request::options(query, "weapi") ); @@ -3254,7 +3254,7 @@ QVariantMap Api::register_anonimous(QVariantMap query) { QVariantMap result = request( POST, - "https://music.163.com/api/register/anonimous", + "/api/register/anonimous", data, Request::options(query, "weapi") ); @@ -3285,7 +3285,7 @@ QVariantMap Api::register_cellphone(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/register/cellphone", + "/api/register/cellphone", data, Request::options(query, "weapi") ); @@ -3299,7 +3299,7 @@ QVariantMap Api::related_allvideo(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloudvideo/v1/allvideo/rcmd", + "/api/cloudvideo/v1/allvideo/rcmd", data, Request::options(query, "weapi") ); @@ -3364,7 +3364,7 @@ QVariantMap Api::resource_like(QVariantMap query) { } return request( POST, - "https://music.163.com/weapi/resource/" + query["t"].toString(), + "/api/resource/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -3391,7 +3391,7 @@ QVariantMap Api::scrobble(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/feedback/weblog", + "/api/feedback/weblog", data, Request::options(query, "weapi") ); @@ -3411,7 +3411,7 @@ QVariantMap Api::search_default(QVariantMap query) { QVariantMap Api::search_hot_detail(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/hotsearchlist/get", + "/api/hotsearchlist/get", {}, Request::options(query, "weapi") ); @@ -3424,7 +3424,7 @@ QVariantMap Api::search_hot(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/search/hot", + "/api/search/hot", data, Index::mergeMap(Request::options(query, "weapi"), { { "uaType", "mobile" } }) ); @@ -3460,7 +3460,7 @@ QVariantMap Api::search_multimatch(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/search/suggest/multimatch", + "/api/search/suggest/multimatch", data, Request::options(query, "weapi") ); @@ -3474,7 +3474,7 @@ QVariantMap Api::search_suggest(QVariantMap query) { QString type = query["type"] == "mobile" ? "keyword" : "web"; return request( POST, - "https://music.163.com/weapi/search/suggest/" + type, + "/api/search/suggest/" + type, data, Request::options(query, "weapi") ); @@ -3491,7 +3491,7 @@ QVariantMap Api::search(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/search/voice/get", + "/api/search/voice/get", data, Request::options(query, "weapi") ); @@ -3507,7 +3507,7 @@ QVariantMap Api::search(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/search/get", + "/api/search/get", data, Request::options(query, "weapi") ); @@ -3539,7 +3539,7 @@ QVariantMap Api::send_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/msg/private/send", + "/api/msg/private/send", data, Request::options(query, "weapi") ); @@ -3570,7 +3570,7 @@ QVariantMap Api::send_text(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/msg/private/send", + "/api/msg/private/send", data, Request::options(query, "weapi") ); @@ -3581,7 +3581,7 @@ QVariantMap Api::setting(QVariantMap query) { QVariantMap data{}; return request( POST, - "https://music.163.com/api/user/setting", + "/api/user/setting", data, Request::options(query, "weapi") ); @@ -3596,7 +3596,7 @@ QVariantMap Api::share_resource(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/share/friends/resource", + "/api/share/friends/resource", data, Request::options(query, "weapi") ); @@ -3634,7 +3634,7 @@ QVariantMap Api::sign_happy_info(QVariantMap query) { QVariantMap data{}; return request( POST, - "https://music.163.com/api/sign/happy/info", + "/api/sign/happy/info", data, Request::options(query, "weapi") ); @@ -3647,7 +3647,7 @@ QVariantMap Api::signin_progress(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/act/modules/signin/v2/progress", + "/api/act/modules/signin/v2/progress", data, Request::options(query, "weapi") ); @@ -3660,7 +3660,7 @@ QVariantMap Api::simi_artist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/discovery/simiArtist", + "/api/discovery/simiArtist", data, Request::options(query, "weapi") ); @@ -3673,7 +3673,7 @@ QVariantMap Api::simi_mv(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/discovery/simiMV", + "/api/discovery/simiMV", data, Request::options(query, "weapi") ); @@ -3688,7 +3688,7 @@ QVariantMap Api::simi_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/discovery/simiPlaylist", + "/api/discovery/simiPlaylist", data, Request::options(query, "weapi") ); @@ -3703,7 +3703,7 @@ QVariantMap Api::simi_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/discovery/simiSong", + "/api/v1/discovery/simiSong", data, Request::options(query, "weapi") ); @@ -3718,7 +3718,7 @@ QVariantMap Api::simi_user(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/discovery/simiUser", + "/api/discovery/simiUser", data, Request::options(query, "weapi") ); @@ -3874,7 +3874,7 @@ QVariantMap Api::song_purchased(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/single/mybought/song/list", + "/api/single/mybought/song/list", data, Request::options(query, "weapi") ); @@ -3903,7 +3903,7 @@ QVariantMap Api::style_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/style-tag/home/album", + "/api/style-tag/home/album", data, Request::options(query, "weapi") ); @@ -3919,7 +3919,7 @@ QVariantMap Api::style_artist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/style-tag/home/artist", + "/api/style-tag/home/artist", data, Request::options(query, "weapi") ); @@ -3932,7 +3932,7 @@ QVariantMap Api::style_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/style-tag/home/head", + "/api/style-tag/home/head", data, Request::options(query, "weapi") ); @@ -3943,7 +3943,7 @@ QVariantMap Api::style_list(QVariantMap query) { QVariantMap data{}; return request( POST, - "https://music.163.com/api/tag/list/get", + "/api/tag/list/get", data, Request::options(query, "weapi") ); @@ -3959,7 +3959,7 @@ QVariantMap Api::style_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/style-tag/home/playlist", + "/api/style-tag/home/playlist", data, Request::options(query, "weapi") ); @@ -3970,7 +3970,7 @@ QVariantMap Api::style_preference(QVariantMap query) { QVariantMap data{}; return request( POST, - "https://music.163.com/api/tag/my/preference/get", + "/api/tag/my/preference/get", data, Request::options(query, "weapi") ); @@ -3986,7 +3986,7 @@ QVariantMap Api::style_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/style-tag/home/song", + "/api/style-tag/home/song", data, Request::options(query, "weapi") ); @@ -4030,7 +4030,7 @@ QVariantMap Api::top_album(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/discovery/new/albums/area", + "/api/discovery/new/albums/area", data, Request::options(query, "weapi") ); @@ -4045,7 +4045,7 @@ QVariantMap Api::top_artists(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/artist/top", + "/api/artist/top", data, Request::options(query, "weapi") ); @@ -4090,7 +4090,7 @@ QVariantMap Api::top_mv(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/mv/toplist", + "/api/mv/toplist", data, Request::options(query, "weapi") ); @@ -4106,7 +4106,7 @@ QVariantMap Api::top_playlist_highquality(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/playlist/highquality/list", + "/api/playlist/highquality/list", data, Request::options(query, "weapi") ); @@ -4123,7 +4123,7 @@ QVariantMap Api::top_playlist(QVariantMap query) { }; const auto res = request( POST, - "https://music.163.com/weapi/playlist/list", + "/api/playlist/list", data, Request::options(query, "weapi") ); @@ -4142,7 +4142,7 @@ QVariantMap Api::top_song(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/discovery/new/songs", + "/api/v1/discovery/new/songs", data, Request::options(query, "weapi") ); @@ -4155,7 +4155,7 @@ QVariantMap Api::topic_detail_event_hot(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/act/event/hot", + "/api/act/event/hot", data, Request::options(query, "weapi") ); @@ -4168,7 +4168,7 @@ QVariantMap Api::topic_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/act/detail", + "/api/act/detail", data, Request::options(query, "weapi") ); @@ -4183,7 +4183,7 @@ QVariantMap Api::topic_sublist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/topic/sublist", + "/api/topic/sublist", data, Request::options(query, "weapi") ); @@ -4199,7 +4199,7 @@ QVariantMap Api::toplist_artist(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/toplist/artist", + "/api/toplist/artist", data, Request::options(query, "weapi") ); @@ -4209,7 +4209,7 @@ QVariantMap Api::toplist_artist(QVariantMap query) { QVariantMap Api::toplist_detail(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/toplist/detail", + "/api/toplist/detail", {}, Request::options(query, "weapi") ); @@ -4282,7 +4282,7 @@ QVariantMap Api::ugc_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/rep/ugc/detail", + "/api/rep/ugc/detail", data, Request::options(query, "weapi") ); @@ -4330,7 +4330,7 @@ QVariantMap Api::user_account(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/nuser/account/get", + "/api/nuser/account/get", data, Request::options(query, "weapi") ); @@ -4343,7 +4343,7 @@ QVariantMap Api::user_audio(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/djradio/get/byuser", + "/api/djradio/get/byuser", data, Request::options(query, "weapi") ); @@ -4354,7 +4354,7 @@ QVariantMap Api::user_binding(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/api/v1/user/bindings/" + query["uid"].toString(), + "/api/v1/user/bindings/" + query["uid"].toString(), data, Request::options(query, "weapi") ); @@ -4367,7 +4367,7 @@ QVariantMap Api::user_cloud_del(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloud/del", + "/api/cloud/del", data, Request::options(query, "weapi") ); @@ -4381,7 +4381,7 @@ QVariantMap Api::user_cloud_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/cloud/get/byids", + "/api/v1/cloud/get/byids", data, Request::options(query, "weapi") ); @@ -4395,7 +4395,7 @@ QVariantMap Api::user_cloud(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/v1/cloud/get", + "/api/v1/cloud/get", data, Request::options(query, "weapi") ); @@ -4412,7 +4412,7 @@ QVariantMap Api::user_comment_history(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/comment/user/comment/history", + "/api/comment/user/comment/history", data, Request::options(query, "weapi") ); @@ -4422,7 +4422,7 @@ QVariantMap Api::user_comment_history(QVariantMap query) { QVariantMap Api::user_detail(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/v1/user/detail/" + query["uid"].toString(), + "/api/v1/user/detail/" + query["uid"].toString(), {}, Request::options(query, "weapi") ); @@ -4436,7 +4436,7 @@ QVariantMap Api::user_dj(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/dj/program/" + query["uid"].toString(), + "/api/dj/program/" + query["uid"].toString(), data, Request::options(query, "weapi") ); @@ -4484,7 +4484,7 @@ QVariantMap Api::user_follows(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/user/getfollows/" + query["uid"].toString(), + "/api/user/getfollows/" + query["uid"].toString(), data, Request::options(query, "weapi") ); @@ -4495,7 +4495,7 @@ QVariantMap Api::user_level(QVariantMap query) { const QVariantMap data{ }; return request( POST, - "https://music.163.com/weapi/user/level", + "/api/user/level", data, Request::options(query, "weapi") ); @@ -4511,7 +4511,7 @@ QVariantMap Api::user_playlist(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/user/playlist", + "/api/user/playlist", data, Request::options(query, "weapi") ); @@ -4525,7 +4525,7 @@ QVariantMap Api::user_record(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/v1/play/record", + "/api/v1/play/record", data, Request::options(query, "weapi") ); @@ -4541,7 +4541,7 @@ QVariantMap Api::user_replacephone(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/user/replaceCellphone", + "/api/user/replaceCellphone", data, Request::options(query, "weapi") ); @@ -4551,7 +4551,7 @@ QVariantMap Api::user_replacephone(QVariantMap query) { QVariantMap Api::user_subcount(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/subcount", + "/api/subcount", {}, Request::options(query, "weapi") ); @@ -4569,7 +4569,7 @@ QVariantMap Api::user_update(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/user/profile/update", + "/api/user/profile/update", data, Request::options(query, "weapi") ); @@ -4591,7 +4591,7 @@ QVariantMap Api::verify_getQr(QVariantMap query) { }; const auto res = request( POST, - "https://music.163.com/weapi/frontrisk/verify/qrcodestatus", + "/api/frontrisk/verify/qrcodestatus", data, Request::options(query, "weapi") ); @@ -4620,7 +4620,7 @@ QVariantMap Api::verify_qrcodestatus(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/frontrisk/verify/qrcodestatus", + "/api/frontrisk/verify/qrcodestatus", data, Request::options(query, "weapi") ); @@ -4635,7 +4635,7 @@ QVariantMap Api::video_category_list(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/cloudvideo/category/list", + "/api/cloudvideo/category/list", data, Request::options(query, "weapi") ); @@ -4649,7 +4649,7 @@ QVariantMap Api::video_detail_info(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/comment/commentthread/info", + "/api/comment/commentthread/info", data, Request::options(query, "weapi") ); @@ -4662,7 +4662,7 @@ QVariantMap Api::video_detail(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloudvideo/v1/video/detail", + "/api/cloudvideo/v1/video/detail", data, Request::options(query, "weapi") ); @@ -4673,7 +4673,7 @@ QVariantMap Api::video_group_list(QVariantMap query) { const QVariantMap data{}; return request( POST, - "https://music.163.com/api/cloudvideo/group/list", + "/api/cloudvideo/group/list", data, Request::options(query, "weapi") ); @@ -4689,7 +4689,7 @@ QVariantMap Api::video_group(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/videotimeline/videogroup/otherclient/get", + "/api/videotimeline/videogroup/otherclient/get", data, Request::options(query, "weapi") ); @@ -4703,7 +4703,7 @@ QVariantMap Api::video_sub(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloudvideo/video/" + query["t"].toString(), + "/api/cloudvideo/video/" + query["t"].toString(), data, Request::options(query, "weapi") ); @@ -4719,7 +4719,7 @@ QVariantMap Api::video_timeline_all(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/videotimeline/otherclient/get", + "/api/videotimeline/otherclient/get", data, Request::options(query, "weapi") ); @@ -4736,7 +4736,7 @@ QVariantMap Api::video_timeline_recommend(QVariantMap query) { }; return request( POST, - "https://music.163.com/api/videotimeline/get", + "/api/videotimeline/get", data, Request::options(query, "weapi") ); @@ -4750,7 +4750,7 @@ QVariantMap Api::video_url(QVariantMap query) { }; return request( POST, - "https://music.163.com/weapi/cloudvideo/playurl", + "/api/cloudvideo/playurl", data, Request::options(query, "weapi") ); @@ -4767,7 +4767,7 @@ QVariantMap Api::vip_timemachine(QVariantMap query) { } return request( POST, - "https://music.163.com/weapi/vipmusic/newrecord/weekflow", + "/api/vipmusic/newrecord/weekflow", data, Request::options(query, "weapi") ); @@ -4896,7 +4896,7 @@ QVariantMap Api::voicelist_trans(QVariantMap query) { QVariantMap Api::weblog(QVariantMap query) { return request( POST, - "https://music.163.com/weapi/feedback/weblog", + "/api/feedback/weblog", query.value("data", QVariantMap()).toMap(), Request::options(query, "weapi") ); @@ -4908,7 +4908,7 @@ QVariantMap Api::yunbei_tasks_todo(QVariantMap query) { // /api/point/today/get return request( POST, - "https://music.163.com/api/usertool/task/todo/query", + "/api/usertool/task/todo/query", data, Request::options(query, "weapi") ); @@ -4920,7 +4920,7 @@ QVariantMap Api::yunbei_tasks(QVariantMap query) { // /api/point/today/get return request( POST, - "https://music.163.com/api/usertool/task/list/all", + "/api/usertool/task/list/all", data, Request::options(query, "weapi") ); @@ -4932,7 +4932,7 @@ QVariantMap Api::yunbei_today(QVariantMap query) { // /api/point/today/get return request( POST, - "https://music.163.com/api/point/today/get", + "/api/point/today/get", data, Request::options(query, "weapi") ); @@ -4944,7 +4944,7 @@ QVariantMap Api::yunbei(QVariantMap query) { // /api/point/today/get return request( POST, - "https://music.163.com/api/point/signed/get", + "/api/point/signed/get", data, Request::options(query, "weapi") ); diff --git a/QCloudMusicApi/plugins.cpp b/QCloudMusicApi/plugins.cpp index 85305d6..8e2c7bc 100644 --- a/QCloudMusicApi/plugins.cpp +++ b/QCloudMusicApi/plugins.cpp @@ -30,7 +30,7 @@ QVariantMap Plugins::songUpload(QVariantMap query) // 获取key和token const auto tokenRes = request( POST, - "https://music.163.com/weapi/nos/token/alloc", + "/api/nos/token/alloc", { { "bucket", bucket }, { "ext", ext }, @@ -82,7 +82,7 @@ QVariantMap Plugins::upload(QVariantMap query) // 获取key和token const auto res = request( POST, - "https://music.163.com/weapi/nos/token/alloc", + "/api/nos/token/alloc", data, Request::options(query, "weapi") ); @@ -104,29 +104,11 @@ QVariantMap Plugins::upload(QVariantMap query) QVariantMap res2 = QJsonDocument::fromJson(body).toVariant().toMap(); - // 获取裁剪后图片的id - const int imgSize = query.value("imgSize", 300).toInt(); - const int imgX = query.value("imgX", 0).toInt(); - const int imgY = query.value("imgY", 0).toInt(); - - const auto res3 = request( - GET, - QString("https://music.163.com/upload/img/op?id=%1&op=%2y%3y%4y%5") - .arg(res["body"].toMap()["result"].toMap()["docId"].toString()) - .arg(imgX) - .arg(imgY) - .arg(imgSize) - .arg(imgSize), - {}, - Request::options(query, "weapi") - ); - return { // ...res.body.result, // ...res2.data, // ...res3.body, { "url_pre", "https://p1.music.126.net/" + res["body"].toMap()["result"].toMap()["objectKey"].toString() }, - { "url", res3["body"].toMap()["url"] }, - { "imgId", res3["body"].toMap()["id"] }, + { "imgId", res["body"].toMap()["result"].toMap()["id"] }, }; } diff --git a/QCloudMusicApi/util/request.cpp b/QCloudMusicApi/util/request.cpp index 7a616e6..82449dc 100644 --- a/QCloudMusicApi/util/request.cpp +++ b/QCloudMusicApi/util/request.cpp @@ -134,6 +134,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, headers["Cookie"] = Index::cookieObjToString(cookie); } + QString url = ""; auto eapiEncrypt = [&]() { options["url"] = uri; const QVariantMap cookie = options.value("cookie", QVariantMap()).toMap(); @@ -168,7 +169,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, }(); data["header"] = header; data = Crypto::eapi(options["url"].toString(), QJsonDocument::fromVariant(data)); - uri = Config::APP_CONF["apiDomain"].toString() + "/eapi/" + uri.mid(5); + url = Config::APP_CONF["apiDomain"].toString() + "/eapi/" + uri.mid(5); }; if (options["crypto"] == "weapi") { @@ -176,7 +177,7 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, data["csrf_token"] = QRegularExpression("_csrf=([^;]+)").match(headers.value("Cookie", "").toString()).captured(1); data = Crypto::weapi(QJsonDocument::fromVariant(data)); - uri = uri.replace(QRegularExpression("\\w*api"), "weapi"); + url = Config::APP_CONF["domain"].toString() + "/weapi/" + uri.mid(5); } else if (options["crypto"] == "linuxapi") { data = Crypto::linuxapi(QJsonDocument::fromVariant(QVariantMap{ @@ -185,19 +186,19 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, { "params", data } })); headers["User-Agent"] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36"; - uri = "https://music.163.com/api/linux/forward"; + url = "https://music.163.com/api/linux/forward"; } else if (options["crypto"] == "eapi") { eapiEncrypt(); } else if (options["crypto"] == "api") { - uri = Config::APP_CONF["apiDomain"].toString() + uri; + url = Config::APP_CONF["apiDomain"].toString() + uri; } else if (options["crypto"] == "") { if (Config::APP_CONF["encrypt"].toBool()) { eapiEncrypt(); } - else uri = Config::APP_CONF["apiDomain"].toString() + uri; + else url = Config::APP_CONF["apiDomain"].toString() + uri; } QNetworkProxy proxy = QNetworkProxy::NoProxy; @@ -216,14 +217,14 @@ QVariantMap Request::createRequest(QNetworkAccessManager::Operation method, } QUrlQuery query; - query.setQuery(QUrl(uri).query()); + query.setQuery(QUrl(url).query()); for (auto i = data.constBegin(); i != data.constEnd(); ++i) { query.addQueryItem(i.key(), QUrl::toPercentEncoding(i.value().toString())); } DEBUG << "method" << method; - DEBUG << "url" << uri; + DEBUG << "url" << url; DEBUG << "data" << data; - QNetworkReply* reply = axios(method, uri, data, headers, query.toString().toUtf8(), proxy); + QNetworkReply* reply = axios(method, url, data, headers, query.toString().toUtf8(), proxy); reply->manager()->deleteLater(); QVariantMap answer{