8 static constexpr
const char *
LQ_BASE_URL =
"VzJWczlXM2hMeCtTZzhLRFJvZWxUUTVmZUVBLzlMWmo=";
9 static constexpr
const char *
LQ_RECOMMEND_URL =
"NDhiOGZ6dUJWNTBvN3R5OHNOQmkyQVVwOXdWbDNBOG14MmVXWVJxWlVXRkxuNUxxdzdYTEpUYVZRNVE9";
24 const int length = key[
"length"].toInt();
76 QNetworkRequest request;
112 const QVariantList &datas = json.
toVariant().toList();
113 for(
const QVariant &var :
qAsConst(datas))
125 QVariantMap value = var.toMap();
129 info.
m_songId = value[
"id"].toString();
132 const QVariantList &artistsArray = value[
"artistInfo"].toList();
133 for(
const QVariant &artistValue :
qAsConst(artistsArray))
135 if(artistValue.isNull())
140 const QVariantMap &artistObject = artistValue.toMap();
143 info.
m_artistId = artistObject[
"id"].toString();
150 const QVariantMap &albumObject = value[
"albumInfo"].toMap();
151 info.
m_albumId = albumObject[
"id"].toString();
156 info.
m_duration = value[
"songLength"].toString();
157 info.
m_year = value[
"year"].toString();
TTK_MODULE_EXPORT QString charactersReplace(const QString &value)
#define TTK_NETWORK_QUERY_CHECK(VALUE)
void downLoadDataChanged(const QString &bytes)
The namespace of the lq request interface.
TTK_MODULE_EXPORT void setSslConfiguration(QNetworkRequest *request, QSslSocket::PeerVerifyMode mode=QSslSocket::VerifyNone) noexcept
QVariant toVariant() const
The class of the music song property.
static QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error=0)
static void parseFromSongProperty(TTK::MusicSongInformation *info, const QString &key, int length, int bitrate)
void createResultItem(const MusicResultInfoItem &result)
TTK_MODULE_EXPORT QString sizeByteToLabel(qint64 size)
virtual void downLoadFinished()
static constexpr const char * LQ_BASE_URL
static void parseFromSongProperty(TTK::MusicSongInformation *info, const QVariantMap &key)
TTK::MusicSongInformationList m_items
TTK_MODULE_EXPORT void makeContentTypeHeader(QNetworkRequest *request, const QByteArray &data={}) noexcept
#define TTK_INFO_STREAM(msg)
QNetworkAccessManager m_manager
static constexpr wchar_t key[]
bool fetchUrlPathSize(TTK::MusicSongProperty *prop, const QString &duration) const
virtual void replyError(QNetworkReply::NetworkError error) override
virtual void downLoadFinished() override
MusicSongRecommendRequest(QObject *parent=nullptr)
virtual void downLoadFinished() overridefinal
TTK_MODULE_EXPORT QString toString(Record type) noexcept
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
static constexpr const char * LQ_RECOMMEND_URL
virtual void startToSearch(const QString &value) overridefinal
The class of the abstract query download data from net.
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.
QString serverToString() const