3 static constexpr
const char *
WY_SONG_INFO_URL =
"S3paVUxRY3hZVDVweWhJZFU0K0FpakhJc3R5YW1hbmpmRUVsL3JTRUdwcnlDdDlMWFJSR0ludFFPZ1MycWExVVlLNjg5Njh3VmV2cGxpQzE=";
4 static constexpr
const char *
WY_SONG_INFO_DATA_URL =
"Zmh6cVNyd2REdlVlZ3JQVUZpNjd5YlBaYVR0SEQrWFAydVpzOWc9PQ==";
5 static constexpr
const char *
WY_NEW_SONG_URL =
"SnJhQ3VyZzNwU0ZnYlo2ME9BRVFjdmp0aGNTTldyL2c2RmtES3dFSkY4b0NFZGUwWDRteFpDS0F0SUozOU9nR0RVVE9lTUFwMEhNPQ==";
6 static constexpr
const char *
WY_NEW_SONG_DATA_URL =
"UnNXcXM0ODFxamFPVmFWeEM3Tm0xL1dZNlZTdDBib3QzejhwUXlsNEg4OGI2aDl4";
23 QNetworkRequest request;
39 QNetworkRequest request;
44 QNetworkReply *reply =
m_manager.post(request, parameter);
73 QVariantMap value = json.
toVariant().toMap();
74 if(value[
"code"].toInt() == 200)
76 value = value[
"result"].toMap();
79 const QVariantList &datas = value[
"songs"].toList();
80 for(
const QVariant &var :
qAsConst(datas))
91 info.
m_songId = value[
"id"].toString();
94 const QVariantList &artistsArray = value[
"ar"].toList();
95 for(
const QVariant &artistValue :
qAsConst(artistsArray))
97 if(artistValue.isNull())
102 const QVariantMap &artistObject = artistValue.toMap();
105 info.
m_artistId = artistObject[
"id"].toString();
111 const QVariantMap &albumObject = value[
"al"].toMap();
112 info.
m_albumId = albumObject[
"id"].toString();
145 QNetworkReply *reply =
TTKObjectCast(QNetworkReply*, sender());
146 if(reply && reply->error() == QNetworkReply::NoError)
152 QVariantMap value = json.
toVariant().toMap();
153 if(value[
"code"].toInt() == 200 && value.contains(
"songs"))
155 const QVariantList &datas = value[
"songs"].toList();
156 for(
const QVariant &var :
qAsConst(datas))
167 info.
m_songId = value[
"id"].toString();
170 const QVariantList &artistsArray = value[
"ar"].toList();
171 for(
const QVariant &artistValue :
qAsConst(artistsArray))
173 if(artistValue.isNull())
178 const QVariantMap &artistObject = artistValue.toMap();
181 info.
m_artistId = artistObject[
"id"].toString();
187 const QVariantMap &albumObject = value[
"al"].toMap();
188 info.
m_albumId = albumObject[
"id"].toString();
228 QNetworkRequest request;
262 QVariantMap value = json.
toVariant().toMap();
263 if(value[
"code"].toInt() == 200 && value.contains(
"data"))
265 value = value[
"data"].toMap();
267 const QVariantList &datas = value[
"newList"].toList();
268 for(
const QVariant &var :
qAsConst(datas))
286 info.
m_songId = value[
"id"].toString();
289 const QVariantList &artistsArray = value[
"ar"].toList();
290 for(
const QVariant &artistValue :
qAsConst(artistsArray))
292 if(artistValue.isNull())
297 const QVariantMap &artistObject = artistValue.toMap();
300 info.
m_artistId = artistObject[
"id"].toString();
306 const QVariantMap &albumObject = value[
"al"].toMap();
307 info.
m_albumId = albumObject[
"id"].toString();
TTK_MODULE_EXPORT QString charactersReplace(const QString &value)
bool pageValid() const noexcept
#define TTK_NETWORK_QUERY_CHECK(VALUE)
MusicWYQuerySongRequest(QObject *parent=nullptr)
static constexpr const char * WY_SEARCH_DATA_URL
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
The class of the query song data from net.
void downloadDataChanged(const QString &bytes)
QVariant toVariant() const
static constexpr const char * WY_SONG_INFO_DATA_URL
static QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error=0)
static constexpr const char * WY_NEW_SONG_DATA_URL
QString makeSongArtist(const QString &in, const QString &name)
virtual void downloadFinished() overridefinal
void createResultItem(const MusicResultInfoItem &result)
static constexpr const char * WY_NEW_SONG_URL
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
virtual void startToPage(int offset) overridefinal
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate)
TTK::MusicSongInformationList m_items
static constexpr const char * QUERY_WY_INTERFACE
#define TTK_INFO_STREAM(msg)
static constexpr const char * WY_SONG_LRC_OLD_URL
QNetworkAccessManager m_manager
virtual void downloadFinished() overridefinal
bool fetchUrlPathSize(TTK::MusicSongProperty *prop, const QString &duration) const
virtual void replyError(QNetworkReply::NetworkError error) override
virtual void startToSearchByID(const QString &value) overridefinal
void parseFromSongProperty(TTK::MusicSongInformation *info, int bitrate)
TTK_MODULE_EXPORT QString toString(Record type) noexcept
MusicWYQueryNewSongRequest(QObject *parent=nullptr)
virtual void downloadFinished()
void downloadSingleFinished()
static constexpr const char * WY_SONG_INFO_URL
virtual void downloadFinished() override
static QString format(const QString &time, const QString &format)
QByteArray makeTokenRequest(QNetworkRequest *request, const QString &query, const QString &data)
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
QString makeCoverPixmapUrl(const QString &id)
virtual void startToPage(int offset) overridefinal
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.
static qint64 formatDuration(const QString &time) noexcept
static constexpr const char * WY_SEARCH_URL
#define TTKObjectCast(x, y)
QString serverToString() const