4 static constexpr
const char *
QUERY_URL =
"SUVwbklrTjVFYXdsSUJ3MHRZb21KVDRXL1ZwU1RtSVRNWURYdDZwczMxZnVXenhr";
5 static constexpr
const char *
TRANSLATION_URL =
"Rm9rVXJIeFNOTDlrV2l5Yld0UGsweGd1V0JZbTFBMVZvQmpKaGhLUmtIT1VhOGtzM0RhVCthdnRhUVNMUGRLYU5LWkJLbVRWQjZoQ2QzYW1wUVIxWkxibnN6VDJ4Q05RNWV6V0NnPT0=";
6 static constexpr
const char *
PARAM_URL =
"cmFWcURkeGhWb2thdWJIMG5JS3BGQmVseW9XeFU5b0Era3V6V1JMa2IxRmRqY2lFRnpUbkM3TDlsUFVjbUNWdA==";
20 QString ig, token,
key;
22 QNetworkRequest request;
31 const QRegExp regx(
"\"ig\"\\s?:\\s?\"(\\w+)\"");
32 ig = (regx.indexIn(bytes) != -1) ? regx.cap(1) : bytes;
36 QRegExp regx(
"params_AbusePreventionHelper\\s?=\\s?\\[(.+)\\]");
37 regx.setMinimal(
true);
38 const QString &buffer = ((regx.indexIn(bytes) != -1) ? regx.cap(1) : QString());
44 const QVariantList &datas = json.
toVariant().toList();
47 key = datas[0].toString();
48 token = datas[1].toString();
55 if(ig.isEmpty() || key.isEmpty() || token.isEmpty())
63 QNetworkRequest request;
86 for(
const QVariant &var : json.
toVariant().toList())
93 QVariantMap value = var.toMap();
94 for(
const QVariant &var : value[
"translations"].toList())
119 case Language::Auto:
return "auto-detect";
120 case Language::Chinese:
return "zh-Hans";
void downLoadDataChanged(const QString &bytes)
TTK_MODULE_EXPORT void setSslConfiguration(QNetworkRequest *request, QSslSocket::PeerVerifyMode mode=QSslSocket::VerifyNone) noexcept
QVariant toVariant() const
static QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error=0)
virtual void deleteAll() overridefinal
The class of the translation words request.
virtual void startToRequest(const QString &data) overridefinal
TTK_MODULE_EXPORT QByteArray syncNetworkQueryForGet(QNetworkRequest *request)
TTK_MODULE_EXPORT QString urlPrettyEncode(QString &data)
virtual void downLoadFinished()
TTK_MODULE_EXPORT void makeUserAgentHeader(QNetworkRequest *request, const QByteArray &data={}) noexcept
static constexpr const char * PARAM_URL
TTK_MODULE_EXPORT void makeContentTypeHeader(QNetworkRequest *request, const QByteArray &data={}) noexcept
#define TTK_INFO_STREAM(msg)
QNetworkAccessManager m_manager
static constexpr wchar_t key[]
virtual void replyError(QNetworkReply::NetworkError error) override
TTK_MODULE_EXPORT QString toString(Record type) noexcept
virtual void downLoadFinished() overridefinal
QString mapToString(Language type) const noexcept
MusicBingTranslationRequest(QObject *parent=nullptr)
static constexpr const char * TRANSLATION_URL
#define TTK_ERROR_STREAM(msg)
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
static constexpr const char * QUERY_URL
#define QtNetworkErrorConnect(p, q, f, s)
Network error connect.