QHttpServerResponse Class

Encapsulates an HTTP response. More...

Header: #include <QHttpServerResponse>
CMake: find_package(Qt6 REQUIRED COMPONENTS HttpServer)
target_link_libraries(mytarget PRIVATE Qt6::HttpServer)
qmake: QT += httpserver
Since: Qt 6.4

Public Functions

QHttpServerResponse(QByteArray &&mimeType, QByteArray &&data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)
QHttpServerResponse(const QByteArray &mimeType, QByteArray &&data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)
QHttpServerResponse(QByteArray &&mimeType, const QByteArray &data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)
QHttpServerResponse(const QByteArray &mimeType, const QByteArray &data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)
QHttpServerResponse(const QJsonArray &data)
QHttpServerResponse(const QJsonObject &data)
QHttpServerResponse(QByteArray &&data)
QHttpServerResponse(const QByteArray &data)
QHttpServerResponse(const QString &data)
QHttpServerResponse(const char *data)
QHttpServerResponse(const QHttpServerResponse::StatusCode statusCode)
QHttpServerResponse(QHttpServerResponse &&other)
QHttpServerResponse &operator=(QHttpServerResponse &&other)
~QHttpServerResponse()
void addHeader(QByteArray &&name, QByteArray &&value)
void addHeader(QByteArray &&name, const QByteArray &value)
void addHeader(const QByteArray &name, QByteArray &&value)
void addHeader(const QByteArray &name, const QByteArray &value)
void addHeaders(QHttpServerResponder::HeaderList headers)
void clearHeader(const QByteArray &name)
void clearHeaders()
QByteArray data() const
bool hasHeader(const QByteArray &header) const
bool hasHeader(const QByteArray &name, const QByteArray &value) const
QList<QByteArray> headers(const QByteArray &name) const
QByteArray mimeType() const
void setHeader(QByteArray &&name, QByteArray &&value)
void setHeader(QByteArray &&name, const QByteArray &value)
void setHeader(const QByteArray &name, QByteArray &&value)
void setHeader(const QByteArray &name, const QByteArray &value)
void setHeaders(QHttpServerResponder::HeaderList headers)
QHttpServerResponse::StatusCode statusCode() const
void write(QHttpServerResponder &&responder) const

Static Public Members

QHttpServerResponse fromFile(const QString &fileName)

Detailed Description

API for creating, reading and modifying a response from an HTTP server, and for writing its contents to a QHttpServerResponder. It has numerous constructors, and static function fromFile for constructing it from the contents of a file. There are functions for setting, getting, and removing headers, and for getting the data, status code and mime type.

Member Function Documentation

QHttpServerResponse::QHttpServerResponse(QByteArray &&mimeType, QByteArray &&data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)

QHttpServerResponse::QHttpServerResponse(QByteArray &&mimeType, const QByteArray &data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)

QHttpServerResponse::QHttpServerResponse(const QByteArray &mimeType, QByteArray &&data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)

QHttpServerResponse::QHttpServerResponse(const QByteArray &mimeType, const QByteArray &data, const QHttpServerResponse::StatusCode status = StatusCode::Ok)

Creates a QHttpServer response.

The response will use the given status code and deliver the data as its body, with a ContentType header describing it as being of MIME type mimeType.

QHttpServerResponse::QHttpServerResponse(const QJsonArray &data)

Creates a QHttpServerResponse object from data.

QHttpServerResponse::QHttpServerResponse(const QJsonObject &data)

Creates a QHttpServerResponse object from data.

QHttpServerResponse::QHttpServerResponse(QByteArray &&data)

Move-constructs a QHttpServerResponse whose body will contain the given data.

QHttpServerResponse::QHttpServerResponse(const QByteArray &data)

Creates a QHttpServerResponse object from data.

QHttpServerResponse::QHttpServerResponse(const QString &data)

Creates a QHttpServerResponse object from data.

QHttpServerResponse::QHttpServerResponse(const char *data)

Creates a QHttpServerResponse object from data.

QHttpServerResponse::QHttpServerResponse(const QHttpServerResponse::StatusCode statusCode)

Creates a QHttpServerResponse object with the status code statusCode.

QHttpServerResponse::QHttpServerResponse(QHttpServerResponse &&other)

Move-constructs an instance of a QHttpServerResponse object from other.

QHttpServerResponse &QHttpServerResponse::operator=(QHttpServerResponse &&other)

Move-assigns the values of other to this object.

QHttpServerResponse::~QHttpServerResponse()

Destroys a QHttpServerResponse object.

void QHttpServerResponse::addHeader(QByteArray &&name, QByteArray &&value)

Adds the HTTP header with name name and value value, does not override any previously set headers.

void QHttpServerResponse::addHeader(QByteArray &&name, const QByteArray &value)

Adds the HTTP header with name name and value value, does not override any previously set headers.

void QHttpServerResponse::addHeader(const QByteArray &name, QByteArray &&value)

Adds the HTTP header with name name and value value, does not override any previously set headers.

void QHttpServerResponse::addHeader(const QByteArray &name, const QByteArray &value)

Adds the HTTP header with name name and value value, does not override any previously set headers.

void QHttpServerResponse::addHeaders(QHttpServerResponder::HeaderList headers)

Adds the HTTP headers in headers, does not override any previously set headers.

void QHttpServerResponse::clearHeader(const QByteArray &name)

Removes the HTTP header with name name.

void QHttpServerResponse::clearHeaders()

Removes all HTTP headers.

QByteArray QHttpServerResponse::data() const

Returns the response body.

[static] QHttpServerResponse QHttpServerResponse::fromFile(const QString &fileName)

Returns a QHttpServerResponse from the content of the file fileName.

It is the caller's responsibility to sanity-check the filename, and to have a well-defined policy for which files the server will request.

bool QHttpServerResponse::hasHeader(const QByteArray &header) const

Returns true if the response contains an HTTP header with name header, otherwise returns false.

bool QHttpServerResponse::hasHeader(const QByteArray &name, const QByteArray &value) const

Returns true if the response contains an HTTP header with name name and with value value, otherwise returns false.

QList<QByteArray> QHttpServerResponse::headers(const QByteArray &name) const

Returns values of the HTTP header with name name.

See also setHeaders().

QByteArray QHttpServerResponse::mimeType() const

Returns the value of the HTTP "Content-Type" header.

Note: Default value is "text/html"

void QHttpServerResponse::setHeader(QByteArray &&name, QByteArray &&value)

Sets the HTTP header with name name and value value, overriding any previously set headers.

See also hasHeader().

void QHttpServerResponse::setHeader(QByteArray &&name, const QByteArray &value)

Sets the HTTP header with name name and value value, overriding any previously set headers.

void QHttpServerResponse::setHeader(const QByteArray &name, QByteArray &&value)

Sets the HTTP header with name name and value value, overriding any previously set headers.

void QHttpServerResponse::setHeader(const QByteArray &name, const QByteArray &value)

Sets the HTTP header with name name and value value, overriding any previously set headers.

void QHttpServerResponse::setHeaders(QHttpServerResponder::HeaderList headers)

Sets the headers headers, overriding any previously set headers.

See also headers().

QHttpServerResponse::StatusCode QHttpServerResponse::statusCode() const

Returns the status code.

void QHttpServerResponse::write(QHttpServerResponder &&responder) const

Writes HTTP response into QHttpServerResponder responder.

© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.