diff options
| -rw-r--r-- | src/nexusinterface.cpp | 5 | ||||
| -rw-r--r-- | src/nxmaccessmanager.cpp | 15 |
2 files changed, 16 insertions, 4 deletions
diff --git a/src/nexusinterface.cpp b/src/nexusinterface.cpp index bc45d8f6..f1fa252a 100644 --- a/src/nexusinterface.cpp +++ b/src/nexusinterface.cpp @@ -557,10 +557,11 @@ void NexusInterface::nextRequest() url = info.m_URL; } QNetworkRequest request(url); - request.setRawHeader("apikey", m_AccessManager->apiKey().toUtf8()); + request.setRawHeader("APIKEY", m_AccessManager->apiKey().toUtf8()); request.setHeader(QNetworkRequest::KnownHeaders::UserAgentHeader, m_AccessManager->userAgent(info.m_SubModule)); request.setHeader(QNetworkRequest::KnownHeaders::ContentTypeHeader, "application/json"); - request.setRawHeader("Protocol-Version", "0.5.5"); + request.setRawHeader("Protocol-Version", "1.0.0"); + request.setRawHeader("Application-Name", "MO2"); request.setRawHeader("Application-Version", QApplication::applicationVersion().toUtf8()); if (postData.object().isEmpty()) 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()); } |
