network manager: include QGIS version in user-agent string (related to #7361)

This commit is contained in:
Juergen E. Fischer 2014-02-18 17:06:02 +01:00
parent 22b2d58f72
commit 266c592c86

View File

@ -22,6 +22,7 @@
#include <qgsnetworkaccessmanager.h>
#include <qgsmessagelog.h>
#include <qgslogger.h>
#include <qgis.h>
#include <QUrl>
#include <QSettings>
@ -136,7 +137,12 @@ QNetworkReply *QgsNetworkAccessManager::createRequest( QNetworkAccessManager::Op
QSettings s;
QNetworkRequest *pReq(( QNetworkRequest * ) &req ); // hack user agent
pReq->setRawHeader( "User-Agent", s.value( "/qgis/networkAndProxy/userAgent", "Mozilla/5.0" ).toByteArray() );
QString userAgent = s.value( "/qgis/networkAndProxy/userAgent", "Mozilla/5.0" ).toString();
if( !userAgent.isEmpty() )
userAgent += " ";
userAgent += QString( "QGIS/%1" ).arg( QGis::QGIS_VERSION );
pReq->setRawHeader( "User-Agent", userAgent.toUtf8() );
emit requestAboutToBeCreated( op, req, outgoingData );
QNetworkReply *reply = QNetworkAccessManager::createRequest( op, req, outgoingData );