summaryrefslogtreecommitdiff
path: root/src/nxmaccessmanager.cpp
diff options
context:
space:
mode:
authorSilarn <jrim@rimpo.org>2019-02-05 13:53:07 -0600
committerSilarn <jrim@rimpo.org>2019-02-18 21:31:19 -0600
commita873c7be23f270ab1a929aaf72aa03182e0ddc2c (patch)
tree0a002b7eba2c95b064d5f7e127eba25b2fa6fb29 /src/nxmaccessmanager.cpp
parent177f5c0446ab09f4010c86e9d8e1d3d02a8a76a9 (diff)
Simple updates API headers requested by Nexus
Diffstat (limited to 'src/nxmaccessmanager.cpp')
-rw-r--r--src/nxmaccessmanager.cpp15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/nxmaccessmanager.cpp b/src/nxmaccessmanager.cpp
index 7ab474a7..1e0ac49b 100644
--- a/src/nxmaccessmanager.cpp
+++ b/src/nxmaccessmanager.cpp
@@ -122,7 +122,11 @@ void NXMAccessManager::startValidationCheck()
QNetworkRequest request(requestString);
request.setRawHeader("APIKEY", m_ApiKey.toUtf8());
- request.setRawHeader("User-Agent", userAgent().toUtf8());
+ request.setHeader(QNetworkRequest::KnownHeaders::UserAgentHeader, userAgent().toUtf8());
+ request.setHeader(QNetworkRequest::KnownHeaders::ContentTypeHeader, "application/json");
+ request.setRawHeader("Protocol-Version", "1.0.0");
+ request.setRawHeader("Application-Name", "MO2");
+ request.setRawHeader("Application-Version", m_MOVersion.toUtf8());
m_ProgressDialog = new QProgressDialog(nullptr);
m_ProgressDialog->setLabelText(tr("Validating Nexus Connection"));
@@ -192,12 +196,19 @@ void NXMAccessManager::apiCheck(const QString &apiKey)
QString NXMAccessManager::userAgent(const QString &subModule) const
{
QStringList comments;
+ QString os;
+ if (QSysInfo::productType() == "windows")
+ comments << ((QSysInfo::kernelType() == "winnt") ? "Windows_NT " : "Windows ") + QSysInfo::kernelVersion();
+ else
+ comments << QSysInfo::kernelType().left(1).toUpper() + QSysInfo::kernelType().mid(1)
+ << QSysInfo::productType().left(1).toUpper() + QSysInfo::kernelType().mid(1) + " " + QSysInfo::productVersion();
comments << "Nexus Client v" + m_NMMVersion;
if (!subModule.isEmpty()) {
comments << "module: " + subModule;
}
+ comments << ((QSysInfo::buildCpuArchitecture() == "x86_64") ? "x64" : "x86");
- return QString("Mod Organizer/%1 (%2)").arg(m_MOVersion, comments.join("; "));
+ return QString("Mod Organizer/%1 (%2) Qt/%3").arg(m_MOVersion, comments.join("; "), qVersion());
}