Auf dieser Seite

QHttpServerResponder Class

API zum Senden von Antworten von einem HTTP-Server. Mehr...

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

Öffentliche Typen

enum class StatusCode { Continue, SwitchingProtocols, Processing, Ok, Created, …, NetworkConnectTimeoutError }

Öffentliche Funktionen

QHttpServerResponder(QHttpServerResponder &&other)
~QHttpServerResponder()
(since 6.11) bool isResponseCanceled() const
(since 6.5) void sendResponse(const QHttpServerResponse &response)
(since 6.8) void swap(QHttpServerResponder &other)
void write(QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(const QJsonDocument &document, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(QIODevice *data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(QIODevice *data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(const QByteArray &data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(const QByteArray &data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
void write(const QJsonDocument &document, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
(since 6.8) void writeBeginChunked(const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
(since 6.8) void writeBeginChunked(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
(since 6.8) void writeBeginChunked(const QHttpHeaders &headers, QList<QHttpHeaders::WellKnownHeader> trailers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
(since 6.8) void writeChunk(const QByteArray &data)
(since 6.8) void writeEndChunked(const QByteArray &data)
(since 6.8) void writeEndChunked(const QByteArray &data, const QHttpHeaders &trailers)

Ausführliche Beschreibung

Stellt Funktionen zum Zurückschreiben an einen HTTP-Client bereit, mit Überladungen zur Serialisierung von JSON-Objekten. Außerdem unterstützt sie das Schreiben von HTTP-Headern und Statuscodes.

Dokumentation zu den Mitgliedstypen

enum class QHttpServerResponder::StatusCode

HTTP-Statuscodes

KonstanteWert
QHttpServerResponder::StatusCode::Continue100
QHttpServerResponder::StatusCode::SwitchingProtocols101
QHttpServerResponder::StatusCode::Processing102
QHttpServerResponder::StatusCode::Ok200
QHttpServerResponder::StatusCode::Created201
QHttpServerResponder::StatusCode::Accepted202
QHttpServerResponder::StatusCode::NonAuthoritativeInformation203
QHttpServerResponder::StatusCode::NoContent204
QHttpServerResponder::StatusCode::ResetContent205
QHttpServerResponder::StatusCode::PartialContent206
QHttpServerResponder::StatusCode::MultiStatus207
QHttpServerResponder::StatusCode::AlreadyReported208
QHttpServerResponder::StatusCode::IMUsed226
QHttpServerResponder::StatusCode::MultipleChoices300
QHttpServerResponder::StatusCode::MovedPermanently301
QHttpServerResponder::StatusCode::Found302
QHttpServerResponder::StatusCode::SeeOther303
QHttpServerResponder::StatusCode::NotModified304
QHttpServerResponder::StatusCode::UseProxy305
QHttpServerResponder::StatusCode::TemporaryRedirect307
QHttpServerResponder::StatusCode::PermanentRedirect308
QHttpServerResponder::StatusCode::BadRequest400
QHttpServerResponder::StatusCode::Unauthorized401
QHttpServerResponder::StatusCode::PaymentRequired402
QHttpServerResponder::StatusCode::Forbidden403
QHttpServerResponder::StatusCode::NotFound404
QHttpServerResponder::StatusCode::MethodNotAllowed405
QHttpServerResponder::StatusCode::NotAcceptable406
QHttpServerResponder::StatusCode::ProxyAuthenticationRequired407
QHttpServerResponder::StatusCode::RequestTimeout408
QHttpServerResponder::StatusCode::Conflict409
QHttpServerResponder::StatusCode::Gone410
QHttpServerResponder::StatusCode::LengthRequired411
QHttpServerResponder::StatusCode::PreconditionFailed412
QHttpServerResponder::StatusCode::PayloadTooLarge413
QHttpServerResponder::StatusCode::UriTooLong414
QHttpServerResponder::StatusCode::UnsupportedMediaType415
QHttpServerResponder::StatusCode::RequestRangeNotSatisfiable416
QHttpServerResponder::StatusCode::ExpectationFailed417
QHttpServerResponder::StatusCode::ImATeapot418
QHttpServerResponder::StatusCode::MisdirectedRequest421
QHttpServerResponder::StatusCode::UnprocessableEntity422
QHttpServerResponder::StatusCode::Locked423
QHttpServerResponder::StatusCode::FailedDependency424
QHttpServerResponder::StatusCode::UpgradeRequired426
QHttpServerResponder::StatusCode::PreconditionRequired428
QHttpServerResponder::StatusCode::TooManyRequests429
QHttpServerResponder::StatusCode::RequestHeaderFieldsTooLarge431
QHttpServerResponder::StatusCode::UnavailableForLegalReasons451
QHttpServerResponder::StatusCode::InternalServerError500
QHttpServerResponder::StatusCode::NotImplemented501
QHttpServerResponder::StatusCode::BadGateway502
QHttpServerResponder::StatusCode::ServiceUnavailable503
QHttpServerResponder::StatusCode::GatewayTimeout504
QHttpServerResponder::StatusCode::HttpVersionNotSupported505
QHttpServerResponder::StatusCode::VariantAlsoNegotiates506
QHttpServerResponder::StatusCode::InsufficientStorage507
QHttpServerResponder::StatusCode::LoopDetected508
QHttpServerResponder::StatusCode::NotExtended510
QHttpServerResponder::StatusCode::NetworkAuthenticationRequired511
QHttpServerResponder::StatusCode::NetworkConnectTimeoutError599

Dokumentation zu Member-Funktionen

[noexcept] QHttpServerResponder::QHttpServerResponder(QHttpServerResponder &&other)

Erstellt eine Instanz von `QHttpServerResponder` und sorgt dafür, dass diese auf dasselbe Objekt verweist, auf das zuvor ` other ` verwiesen hat.

[noexcept] QHttpServerResponder::~QHttpServerResponder()

Löst ein „ QHttpServerResponder “ auf.

[since 6.11] bool QHttpServerResponder::isResponseCanceled() const

Gibt „true“ zurück, wenn der Client die Antwort abgebrochen hat. Wird verwendet, um einen vorzeitigen Abbruch des Handlers zu ermöglichen, wenn die Antwort abgebrochen wird.

Diese Funktion wurde in Qt 6.11 eingeführt.

[since 6.5] void QHttpServerResponder::sendResponse(const QHttpServerResponse &response)

Sendet eine HTTP-Anfrage vom Typ „ response “ an den Client.

Diese Funktion wurde in Qt 6.5 eingeführt.

[noexcept, since 6.8] void QHttpServerResponder::swap(QHttpServerResponder &other)

Tauscht QHttpServerResponder other gegen QHttpServerResponder aus. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.

Diese Funktion wurde in Qt 6.8 eingeführt.

void QHttpServerResponder::write(QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode „ status “.

Hinweis: Diese Funktion setzt den HTTP-Header „Content-Type“ auf „ "application/x-empty" “.

void QHttpServerResponder::write(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit einem HTTP-Statuscode status und HTTP-Headern headers.

void QHttpServerResponder::write(const QJsonDocument &document, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode „ status “ und dem JSON-Dokument „ document “.

Hinweis: Diese Funktion setzt den HTTP-Header „Content-Type“ auf „ "application/json" “.

void QHttpServerResponder::write(QIODevice *data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode status und dem MIME-Typ mimeType. Das E/A-Gerät data liefert den Hauptteil der Antwort. Ist data sequenziell, wird der Hauptteil der Nachricht in Blöcken gesendet; andernfalls geht die Funktion davon aus, dass der gesamte Inhalt verfügbar ist, und sendet ihn auf einmal, wobei das Lesen jedoch in Blöcken erfolgt.

Hinweis: Diese Funktion übernimmt die Eigentumsrechte an data.

void QHttpServerResponder::write(QIODevice *data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode status und den HTTP-Headern headers. Das E/A-Gerät data liefert den Hauptteil der Antwort. Ist data sequenziell, wird der Hauptteil der Nachricht in Blöcken gesendet; andernfalls geht die Funktion davon aus, dass der gesamte Inhalt verfügbar ist, und sendet ihn auf einmal, wobei das Lesen jedoch in Blöcken erfolgt.

Hinweis: Diese Funktion übernimmt die Eigentumsrechte an data.

void QHttpServerResponder::write(const QByteArray &data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode status, dem MIME-Typ mimeType und dem Hauptteil data.

void QHttpServerResponder::write(const QByteArray &data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit einem HTTP-Statuscode status, HTTP-Headern headers und einem Body data.

Hinweis: Diese Funktion setzt den HTTP-Header „Content-Length“.

void QHttpServerResponder::write(const QJsonDocument &document, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beantwortet eine Anfrage mit dem HTTP-Statuscode „ status “, dem JSON-Dokument „ document “ und den HTTP-Headern „ headers “.

Hinweis: Diese Funktion setzt den HTTP-Header „Content-Type“ auf „ "application/json" “.

[since 6.8] void QHttpServerResponder::writeBeginChunked(const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beginnen Sie mit dem Senden von Datenblöcken mit dem MIME-Typ „ mimeType “ und dem angegebenen Statuscode „ status “. Auf diesen Aufruf müssen eine beliebige Anzahl wiederholter Aufrufe von „ writeChunk “ sowie ein einzelner Aufruf von „ writeEndChunked “ folgen.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch writeChunk und writeEndChunked.

[since 6.8] void QHttpServerResponder::writeBeginChunked(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beginnen Sie mit dem Senden von Datenblöcken mit „ headers “ und dem Statuscode „ status “. Auf diesen Aufruf müssen eine beliebige Anzahl wiederholter Aufrufe von „ writeChunk “ sowie ein einzelner Aufruf von „ writeEndChunked “ folgen.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch „ writeChunk “ und „ writeEndChunked “.

[since 6.8] void QHttpServerResponder::writeBeginChunked(const QHttpHeaders &headers, QList<QHttpHeaders::WellKnownHeader> trailers, QHttpServerResponder::StatusCode status = StatusCode::Ok)

Beginnen Sie mit dem Senden von Datenblöcken mit „ headers “ und dem angegebenen Statuscode „ status “. Auf diesen Aufruf müssen eine beliebige Anzahl wiederholter Aufrufe von „ writeChunk “ sowie ein einzelner Aufruf von „ writeEndChunked “ mit denselben Endzeichen folgen, die unter „ trailers “ angegeben sind.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch writeChunk und writeEndChunked.

[since 6.8] void QHttpServerResponder::writeChunk(const QByteArray &data)

Schreibt „ data “ an den Client zurück. Wird aufgerufen, wenn Daten zum Schreiben verfügbar sind. Diese Funktion kann mehrfach aufgerufen werden, jedoch muss vor dem Aufruf von dieser Funktion „ writeBeginChunked “ und danach „ writeEndChunked “ aufgerufen werden.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch „ writeBeginChunked “ und „ writeEndChunked “.

[since 6.8] void QHttpServerResponder::writeEndChunked(const QByteArray &data)

Schreiben Sie „ data “ zurück an den Client. Dem muss ein Aufruf von „ writeBeginChunked “ vorausgehen.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch „ writeBeginChunked “ und „ writeChunk “.

[since 6.8] void QHttpServerResponder::writeEndChunked(const QByteArray &data, const QHttpHeaders &trailers)

Schreiben Sie „ data “ mit dem in writeBeginChunked angekündigten „ trailers “ an den Client zurück.

Diese Funktion wurde in Qt 6.8 eingeführt.

Siehe auch „ writeBeginChunked “ und „ writeChunk “.

© 2026 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.