18 QNetworkRequest request;
33 QNetworkRequest request;
37 QNetworkReply *reply =
m_manager.get(request);
61 QNetworkRequest request;
73 const QVariant &data = json.
parse(bytes, &ok);
76 QVariantMap value = data.toMap();
77 if(value[
"errcode"].toInt() == 0 && value.contains(
"data"))
79 value = value[
"data"].toMap();
80 item.
m_coverUrl = value[
"imgurl"].toString().replace(
"{size}",
"400");
81 item.
m_name = value[
"specialname"].toString();
82 item.
m_count = value[
"playcount"].toString();
84 item.
m_time = value[
"publishtime"].toString();
85 item.
m_nickName = value[
"nickname"].toString();
88 const QVariantList &tags = value[
"tags"].toList();
89 for(
const QVariant &var :
qAsConst(tags))
118 const QVariant &data = json.
parse(
m_reply->readAll(), &ok);
121 QVariantMap value = data.toMap();
122 if(value[
"errcode"].toInt() == 0)
124 value = value[
"data"].toMap();
127 const QVariantList &datas = value[
"info"].toList();
128 for(
const QVariant &var :
qAsConst(datas))
139 item.
m_coverUrl = value[
"imgurl"].toString().replace(
"{size}",
"400");
140 item.
m_id = value[
"specialid"].toString();
141 item.
m_name = value[
"specialname"].toString();
142 item.
m_count = value[
"playcount"].toString();
144 item.
m_time = value[
"publishtime"].toString();
145 item.
m_nickName = value[
"username"].toString();
161 QNetworkReply *reply =
TTKObjectCast(QNetworkReply*, sender());
162 if(reply && reply->error() == QNetworkReply::NoError)
166 const QVariant &data = json.
parse(reply->readAll(), &ok);
169 QVariantMap value = data.toMap();
170 if(value[
"errcode"].toInt() == 0 && value.contains(
"data"))
172 value = value[
"data"].toMap();
174 const QVariantList &datas = value[
"info"].toList();
175 for(
const QVariant &var :
qAsConst(datas))
186 info.
m_songId = value[
"hash"].toString();
188 info.
m_albumId = value[
"album_id"].toString();
#define TTK_NETWORK_QUERY_CHECK(VALUE)
virtual void startToPage(int offset) overridefinal
The class of the search result data item.
void downLoadDataChanged(const QString &bytes)
void downloadDetailsFinished()
virtual void downLoadFinished() overridefinal
static constexpr const char * QUERY_KG_INTERFACE
static constexpr const char * KG_PLAYLIST_URL
playlist url
TTK_MODULE_EXPORT QByteArray syncNetworkQueryForGet(QNetworkRequest *request)
The class of the query playlist download data from net.
virtual void downLoadFinished()
void makeRequestRawHeader(QNetworkRequest *request)
void createPlaylistItem(const MusicResultDataItem &item)
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate)
TTK::MusicSongInformationList m_items
virtual void startToSearch(const QString &value) overridefinal
#define TTK_INFO_STREAM(msg)
virtual void startToQueryInfo(MusicResultDataItem &item) overridefinal
QNetworkAccessManager m_manager
void createResultItem(const MusicResultInfoItem &songItem)
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.
virtual void downLoadFinished() override
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
static constexpr const char * KG_PLAYLIST_INFO_URL
static constexpr const char * KG_PLAYLIST_DETAIL_URL
MusicKGQueryPlaylistRequest(QObject *parent=nullptr)
TTK_MODULE_EXPORT QString toString(Record type)
void parseFromSongAlbumLrc(TTK::MusicSongInformation *info)
Main class used to convert JSON data to QVariant objects.
void parseFromSongAlbumInfo(TTK::MusicSongInformation *info, const QString &album)
void parseFromSongProperty(TTK::MusicSongInformation *info, int bitrate)
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.
static qint64 formatDuration(const QString &time) noexcept
#define TTKObjectCast(x, y)
QString serverToString() const