18 QNetworkRequest request;
54 const QVariant &data = json.
parse(
m_reply->readAll(), &ok);
57 QVariantMap value = data.toMap();
58 if(value.contains(
"musiclist"))
64 const QVariantList &datas = value[
"musiclist"].toList();
65 for(
const QVariant &var :
qAsConst(datas))
76 info.
m_songId = value[
"id"].toString();
79 info.
m_artistId = value[
"artistid"].toString();
82 info.
m_albumId = value[
"albumid"].toString();
110 QNetworkRequest request;
122 const QVariant &data = json.
parse(bytes, &ok);
125 QVariantMap value = data.toMap();
126 if(value.contains(
"data"))
128 const QVariantList &datas = value[
"data"].toList();
129 for(
const QVariant &var :
qAsConst(datas))
139 const QVariantList &ranks = value[
"list"].toList();
140 for(
const QVariant &rank :
qAsConst(ranks))
147 value = rank.toMap();
156 item.
m_name = value[
"name"].toString();
158 item.
m_count = value[
"id"].toString();
160 item.
m_time = value[
"pub"].toString();
TTK_MODULE_EXPORT QString charactersReplace(const QString &value)
The class of the query toplist download data from net.
virtual void startToPage(int offset) overridefinal
virtual void startToSearch(const QString &value) overridefinal
#define TTK_NETWORK_QUERY_CHECK(VALUE)
The class of the search result data item.
void downLoadDataChanged(const QString &bytes)
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
QString makeCoverPixmapUrl(const QString &url, const QString &id)
TTK_MODULE_EXPORT QByteArray syncNetworkQueryForGet(QNetworkRequest *request)
void makeRequestRawHeader(QNetworkRequest *request)
virtual void downLoadFinished()
virtual void queryToplistInfo(const QVariantMap &input) overridefinal
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate)
TTK::MusicSongInformationList m_items
static constexpr const char * KW_SONG_LRC_URL
#define TTK_INFO_STREAM(msg)
QNetworkAccessManager m_manager
void createResultItem(const MusicResultInfoItem &songItem)
#define TOPLIST_PAGE_SIZE
virtual void startToSearch(const QString &value) override
MusicKWQueryToplistRequest(QObject *parent=nullptr)
bool fetchUrlPathSize(TTK::MusicSongProperty *prop, const QString &duration) const
virtual void replyError(QNetworkReply::NetworkError error) override
QVariant parse(QIODevice *io, bool *ok=0)
Read JSON string from the I/O Device and converts it to a QVariant object.
static constexpr const char * QUERY_KW_INTERFACE
static constexpr const char * KW_TOPLIST_INFO_URL
QString makeSongArtist(const QString &name)
virtual void downLoadFinished() overridefinal
TTK_MODULE_EXPORT QString toString(Record type)
void createToplistItem(const MusicResultDataItem &item)
Main class used to convert JSON data to QVariant objects.
static constexpr const char * KW_TOPLIST_URL
toplist url
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
void parseFromSongProperty(TTK::MusicSongInformation *info, int bitrate)
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.
static qint64 formatDuration(const QString &time) noexcept
QString serverToString() const