enhance: Internal requests follow 301 redirects

This commit is contained in:
Zhiyuan Li 2024-08-17 14:20:58 +10:00
parent 5c11af9ce6
commit 8125cc627e
2 changed files with 6 additions and 2 deletions

@ -28,6 +28,7 @@ void SparkAPI::get(QUrl url)
QNetworkRequest request; QNetworkRequest request;
HttpRequest *httprequest = new HttpRequest; HttpRequest *httprequest = new HttpRequest;
request.setUrl(QUrl(url.toString().replace("+", "%2B"))); request.setUrl(QUrl(url.toString().replace("+", "%2B")));
request.setAttribute(QNetworkRequest::FollowRedirectsAttribute, true);
connect(httprequest, &HttpRequest::finished, [=](QString data) connect(httprequest, &HttpRequest::finished, [=](QString data)
{ {
QByteArray arr = data.toUtf8(); QByteArray arr = data.toUtf8();
@ -53,6 +54,7 @@ void SparkAPI::getRAW(QUrl url)
QNetworkRequest request; QNetworkRequest request;
HttpRequest *httprequest = new HttpRequest; HttpRequest *httprequest = new HttpRequest;
request.setUrl(QUrl(url.toString().replace("+", "%2B"))); request.setUrl(QUrl(url.toString().replace("+", "%2B")));
request.setAttribute(QNetworkRequest::FollowRedirectsAttribute, true);
connect(httprequest, &HttpRequest::finished, [=](QString data) connect(httprequest, &HttpRequest::finished, [=](QString data)
{ {
emit finishedRAW(data); emit finishedRAW(data);

@ -73,6 +73,7 @@ void AppIntoPage::openUrl(const QUrl &url)
iconRequest.setUrl(QUrl(pkgUrlBase + "/icon.png")); iconRequest.setUrl(QUrl(pkgUrlBase + "/icon.png"));
iconRequest.setHeader(QNetworkRequest::UserAgentHeader, m_userAgent); iconRequest.setHeader(QNetworkRequest::UserAgentHeader, m_userAgent);
iconRequest.setHeader(QNetworkRequest::ContentTypeHeader, "charset='utf-8'"); iconRequest.setHeader(QNetworkRequest::ContentTypeHeader, "charset='utf-8'");
iconRequest.setAttribute(QNetworkRequest::FollowRedirectsAttribute, true);
iconManager->get(iconRequest); iconManager->get(iconRequest);
QObject::connect(iconManager, &QNetworkAccessManager::finished, [=](QNetworkReply *reply) QObject::connect(iconManager, &QNetworkAccessManager::finished, [=](QNetworkReply *reply)
@ -96,6 +97,7 @@ void AppIntoPage::openUrl(const QUrl &url)
request.setUrl(QUrl(imgUrl)); request.setUrl(QUrl(imgUrl));
request.setHeader(QNetworkRequest::UserAgentHeader, m_userAgent); request.setHeader(QNetworkRequest::UserAgentHeader, m_userAgent);
request.setHeader(QNetworkRequest::ContentTypeHeader, "charset='utf-8'"); request.setHeader(QNetworkRequest::ContentTypeHeader, "charset='utf-8'");
request.setAttribute(QNetworkRequest::FollowRedirectsAttribute, true);
manager->get(request); manager->get(request);
QObject::connect(manager, &QNetworkAccessManager::finished, [=](QNetworkReply *reply) QObject::connect(manager, &QNetworkAccessManager::finished, [=](QNetworkReply *reply)
{ {
@ -114,10 +116,10 @@ void AppIntoPage::openUrl(const QUrl &url)
qDebug() << imgUrl; qDebug() << imgUrl;
} }
manager->deleteLater(); manager->deleteLater();
}); });
} }
/** /**
* NOTE: No need to judget developmode status * NOTE: No need to judget developmode status