From 948d051fb145ad486e0409cb219bab9616328502 Mon Sep 17 00:00:00 2001 From: Markus Goetz Date: Thu, 7 Jul 2011 17:42:55 +0200 Subject: QNAM: Add support for more KnownHeaders Task-Number: QTBUG-17267 Change-Id: I32b41d26411ee3a7162bb658d69363a5eeb37230 Reviewed-on: http://codereview.qt.nokia.com/1327 Reviewed-by: Qt Sanity Bot Reviewed-by: Martin Petersson --- src/network/access/qnetworkrequest.cpp | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/network/access/qnetworkrequest.cpp') diff --git a/src/network/access/qnetworkrequest.cpp b/src/network/access/qnetworkrequest.cpp index 7f61ef9239..21b1d84a78 100644 --- a/src/network/access/qnetworkrequest.cpp +++ b/src/network/access/qnetworkrequest.cpp @@ -105,6 +105,10 @@ QT_BEGIN_NAMESPACE header and contains a QList representing the cookies sent by the server to be stored locally. + \value UserAgentHeader The User-Agent header sent by HTTP clients. + + \value ServerHeader The Server header received by HTTP clients. + \sa header(), setHeader(), rawHeader(), setRawHeader() */ @@ -650,6 +654,12 @@ static QByteArray headerName(QNetworkRequest::KnownHeaders header) case QNetworkRequest::ContentDispositionHeader: return "Content-Disposition"; + case QNetworkRequest::UserAgentHeader: + return "User-Agent"; + + case QNetworkRequest::ServerHeader: + return "Server"; + // no default: // if new values are added, this will generate a compiler warning } @@ -663,6 +673,8 @@ static QByteArray headerValue(QNetworkRequest::KnownHeaders header, const QVaria case QNetworkRequest::ContentTypeHeader: case QNetworkRequest::ContentLengthHeader: case QNetworkRequest::ContentDispositionHeader: + case QNetworkRequest::UserAgentHeader: + case QNetworkRequest::ServerHeader: return value.toByteArray(); case QNetworkRequest::LocationHeader: @@ -745,6 +757,13 @@ static QNetworkRequest::KnownHeaders parseHeaderName(const QByteArray &headerNam case 's': if (qstricmp(headerName.constData(), "set-cookie") == 0) return QNetworkRequest::SetCookieHeader; + else if (qstricmp(headerName.constData(), "server") == 0) + return QNetworkRequest::ServerHeader; + break; + + case 'u': + if (qstricmp(headerName.constData(), "user-agent") == 0) + return QNetworkRequest::UserAgentHeader; break; } @@ -778,6 +797,8 @@ static QVariant parseHeaderValue(QNetworkRequest::KnownHeaders header, const QBy { // header is always a valid value switch (header) { + case QNetworkRequest::UserAgentHeader: + case QNetworkRequest::ServerHeader: case QNetworkRequest::ContentTypeHeader: // copy exactly, convert to QString return QString::fromLatin1(value); -- cgit v1.2.3