QHttpHeader

The QHttpHeader class contains header information for HTTP. More...

 #include <QHttpHeader>

This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.

Inherited by: QHttpRequestHeader and QHttpResponseHeader.

Public Functions

QHttpHeader ()
QHttpHeader ( const QHttpHeader & header )
QHttpHeader ( const QString & str )
virtual ~QHttpHeader ()
void addValue ( const QString & key, const QString & value )
QStringList allValues ( const QString & key ) const
uint contentLength () const
QString contentType () const
bool hasContentLength () const
bool hasContentType () const
bool hasKey ( const QString & key ) const
bool isValid () const
QStringList keys () const
virtual int majorVersion () const = 0
virtual int minorVersion () const = 0
void removeAllValues ( const QString & key )
void removeValue ( const QString & key )
void setContentLength ( int len )
void setContentType ( const QString & type )
void setValue ( const QString & key, const QString & value )
void setValues ( const QList<QPair<QString, QString> > & values )
virtual QString toString () const
QString value ( const QString & key ) const
QList<QPair<QString, QString> > values () const
QHttpHeader & operator= ( const QHttpHeader & h )

Detailed Description

The QHttpHeader class contains header information for HTTP.

In most cases you should use the more specialized derivatives of this class, QHttpResponseHeader and QHttpRequestHeader, rather than directly using QHttpHeader.

QHttpHeader provides the HTTP header fields. A HTTP header field consists of a name followed by a colon, a single space, and the field value. (See RFC 1945.) Field names are case-insensitive. A typical header field looks like this:

 content-type: text/html

In the API the header field name is called the "key" and the content is called the "value". You can get and set a header field's value by using its key with value() and setValue(), e.g.

 header.setValue("content-type", "text/html");
 QString contentType = header.value("content-type");

Some fields are so common that getters and setters are provided for them as a convenient alternative to using value() and setValue(), e.g. contentLength() and contentType(), setContentLength() and setContentType().

Each header key has a single value associated with it. If you set the value for a key which already exists the previous value will be discarded.

See also QHttpRequestHeader and QHttpResponseHeader.

Member Function Documentation

QHttpHeader::QHttpHeader ()

Constructs an empty HTTP header.

QHttpHeader::QHttpHeader ( const QHttpHeader & header )

Constructs a copy of header.

QHttpHeader::QHttpHeader ( const QString & str )

Constructs a HTTP header for str.

This constructor parses the string str for header fields and adds this information. The str should consist of one or more "\r\n" delimited lines; each of these lines should have the format key, colon, space, value.

QHttpHeader::~QHttpHeader () [virtual]

Destructor.

void QHttpHeader::addValue ( const QString & key, const QString & value )

Adds a new entry with the key and value.

QStringList QHttpHeader::allValues ( const QString & key ) const

Returns all the entries with the given key. If no entry has this key, an empty string list is returned.

uint QHttpHeader::contentLength () const

Returns the value of the special HTTP header field content-length.

See also setContentLength() and hasContentLength().

QString QHttpHeader::contentType () const

Returns the value of the special HTTP header field content-type.

See also setContentType() and hasContentType().

bool QHttpHeader::hasContentLength () const

Returns true if the header has an entry for the special HTTP header field content-length; otherwise returns false.

See also contentLength() and setContentLength().

bool QHttpHeader::hasContentType () const

Returns true if the header has an entry for the special HTTP header field content-type; otherwise returns false.

See also contentType() and setContentType().

bool QHttpHeader::hasKey ( const QString & key ) const

Returns true if the HTTP header has an entry with the given key; otherwise returns false.

See also value(), setValue(), and keys().

bool QHttpHeader::isValid () const

Returns true if the HTTP header is valid; otherwise returns false.

A QHttpHeader is invalid if it was created by parsing a malformed string.

QStringList QHttpHeader::keys () const

Returns a list of the keys in the HTTP header.

See also hasKey().

int QHttpHeader::majorVersion () const [pure virtual]

Returns the major protocol-version of the HTTP header.

int QHttpHeader::minorVersion () const [pure virtual]

Returns the minor protocol-version of the HTTP header.

void QHttpHeader::removeAllValues ( const QString & key )

Removes all the entries with the key key from the HTTP header.

void QHttpHeader::removeValue ( const QString & key )

Removes the entry with the key key from the HTTP header.

See also value() and setValue().

void QHttpHeader::setContentLength ( int len )

Sets the value of the special HTTP header field content-length to len.

See also contentLength() and hasContentLength().

void QHttpHeader::setContentType ( const QString & type )

Sets the value of the special HTTP header field content-type to type.

See also contentType() and hasContentType().

void QHttpHeader::setValue ( const QString & key, const QString & value )

Sets the value of the entry with the key to value.

If no entry with key exists, a new entry with the given key and value is created. If an entry with the key already exists, the first value is discarded and replaced with the given value.

See also value(), hasKey(), and removeValue().

void QHttpHeader::setValues ( const QList<QPair<QString, QString> > & values )

Sets the header entries to be the list of key value pairs in values.

See also values().

QString QHttpHeader::toString () const [virtual]

Returns a string representation of the HTTP header.

The string is suitable for use by the constructor that takes a QString. It consists of lines with the format: key, colon, space, value, "\r\n".

QString QHttpHeader::value ( const QString & key ) const

Returns the first value for the entry with the given key. If no entry has this key, an empty string is returned.

See also setValue(), removeValue(), hasKey(), and keys().

QList<QPair<QString, QString> > QHttpHeader::values () const

Returns all the entries in the header.

See also setValues().

QHttpHeader & QHttpHeader::operator= ( const QHttpHeader & h )

Assigns h and returns a reference to this http header.

Last modified: 2014-03-13

comments powered by Disqus