18 QNetworkRequest request;
49 const QVariant &data = json.
parse(
m_reply->readAll(), &ok);
52 QVariantMap value = data.toMap();
53 if(value.contains(
"data"))
56 value = value[
"data"].toMap();
59 const QVariantList &datas = value[
"info"].toList();
60 for(
const QVariant &var :
qAsConst(datas))
71 info.
m_songId = value[
"hash"].toString();
73 info.
m_albumId = value[
"album_id"].toString();
130 QNetworkRequest request;
148 const QVariant &data = json.
parse(
m_reply->readAll(), &ok);
151 QVariantMap value = data.toMap();
152 if(value[
"errcode"].toInt() == 0 && value.contains(
"data"))
154 value = value[
"data"].toMap();
157 const QVariantList &datas = value[
"info"].toList();
158 for(
const QVariant &var :
qAsConst(datas))
169 item.
m_id = value[
"albumid"].toString();
170 item.
m_coverUrl = value[
"imgurl"].toString().replace(
"{size}",
"400");
171 item.
m_name = value[
"albumname"].toString();
#define TTK_NETWORK_QUERY_CHECK(VALUE)
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate) overridefinal
virtual void downLoadFinished() overridefinal
The class of the search result data item.
static constexpr const char * KG_ALBUM_URL
album url
void downLoadDataChanged(const QString &bytes)
virtual void downLoadFinished() overridefinal
static constexpr const char * QUERY_KG_INTERFACE
virtual void downLoadFinished()
void makeRequestRawHeader(QNetworkRequest *request)
The class of the query album download data from net.
virtual void startToPage(int offset) overridefinal
virtual void startToQueryResult(TTK::MusicSongInformation *info, int bitrate)
TTK::MusicSongInformationList m_items
#define TTK_INFO_STREAM(msg)
MusicKGQueryAlbumRequest(QObject *parent=nullptr)
QNetworkAccessManager m_manager
void createResultItem(const MusicResultInfoItem &songItem)
virtual void startToPage(int offset) overridefinal
bool fetchUrlPathSize(TTK::MusicSongProperty *prop, const QString &duration) const
void createAlbumItem(const MusicResultDataItem &item)
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.
TTK_MODULE_EXPORT QStringList split(const QString &value, const QString &key=TTK_DEFAULT_STR)
MusicKGQueryArtistAlbumRequest(QObject *parent=nullptr)
#define ARTIST_ATTR_PAGE_SIZE
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)
static constexpr const char * KG_ARTIST_ALBUM_URL
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.
static qint64 formatDuration(const QString &time) noexcept
QString serverToString() const