QHttpServerResponder Class
API für das Senden von Antworten von einem HTTP-Server. Mehr...
Kopfzeile: | #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.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) |
Detaillierte Beschreibung
Bietet Funktionen zum Zurückschreiben an einen HTTP-Client mit Überladungen zum Serialisieren von JSON-Objekten. Es bietet auch Unterstützung für das Schreiben von HTTP-Headern und Statuscode.
Dokumentation der Mitgliedstypen
enum class QHttpServerResponder::StatusCode
HTTP-Statuscodes
Konstante | Wert |
---|---|
QHttpServerResponder::StatusCode::Continue | 100 |
QHttpServerResponder::StatusCode::SwitchingProtocols | 101 |
QHttpServerResponder::StatusCode::Processing | 102 |
QHttpServerResponder::StatusCode::Ok | 200 |
QHttpServerResponder::StatusCode::Created | 201 |
QHttpServerResponder::StatusCode::Accepted | 202 |
QHttpServerResponder::StatusCode::NonAuthoritativeInformation | 203 |
QHttpServerResponder::StatusCode::NoContent | 204 |
QHttpServerResponder::StatusCode::ResetContent | 205 |
QHttpServerResponder::StatusCode::PartialContent | 206 |
QHttpServerResponder::StatusCode::MultiStatus | 207 |
QHttpServerResponder::StatusCode::AlreadyReported | 208 |
QHttpServerResponder::StatusCode::IMUsed | 226 |
QHttpServerResponder::StatusCode::MultipleChoices | 300 |
QHttpServerResponder::StatusCode::MovedPermanently | 301 |
QHttpServerResponder::StatusCode::Found | 302 |
QHttpServerResponder::StatusCode::SeeOther | 303 |
QHttpServerResponder::StatusCode::NotModified | 304 |
QHttpServerResponder::StatusCode::UseProxy | 305 |
QHttpServerResponder::StatusCode::TemporaryRedirect | 307 |
QHttpServerResponder::StatusCode::PermanentRedirect | 308 |
QHttpServerResponder::StatusCode::BadRequest | 400 |
QHttpServerResponder::StatusCode::Unauthorized | 401 |
QHttpServerResponder::StatusCode::PaymentRequired | 402 |
QHttpServerResponder::StatusCode::Forbidden | 403 |
QHttpServerResponder::StatusCode::NotFound | 404 |
QHttpServerResponder::StatusCode::MethodNotAllowed | 405 |
QHttpServerResponder::StatusCode::NotAcceptable | 406 |
QHttpServerResponder::StatusCode::ProxyAuthenticationRequired | 407 |
QHttpServerResponder::StatusCode::RequestTimeout | 408 |
QHttpServerResponder::StatusCode::Conflict | 409 |
QHttpServerResponder::StatusCode::Gone | 410 |
QHttpServerResponder::StatusCode::LengthRequired | 411 |
QHttpServerResponder::StatusCode::PreconditionFailed | 412 |
QHttpServerResponder::StatusCode::PayloadTooLarge | 413 |
QHttpServerResponder::StatusCode::UriTooLong | 414 |
QHttpServerResponder::StatusCode::UnsupportedMediaType | 415 |
QHttpServerResponder::StatusCode::RequestRangeNotSatisfiable | 416 |
QHttpServerResponder::StatusCode::ExpectationFailed | 417 |
QHttpServerResponder::StatusCode::ImATeapot | 418 |
QHttpServerResponder::StatusCode::MisdirectedRequest | 421 |
QHttpServerResponder::StatusCode::UnprocessableEntity | 422 |
QHttpServerResponder::StatusCode::Locked | 423 |
QHttpServerResponder::StatusCode::FailedDependency | 424 |
QHttpServerResponder::StatusCode::UpgradeRequired | 426 |
QHttpServerResponder::StatusCode::PreconditionRequired | 428 |
QHttpServerResponder::StatusCode::TooManyRequests | 429 |
QHttpServerResponder::StatusCode::RequestHeaderFieldsTooLarge | 431 |
QHttpServerResponder::StatusCode::UnavailableForLegalReasons | 451 |
QHttpServerResponder::StatusCode::InternalServerError | 500 |
QHttpServerResponder::StatusCode::NotImplemented | 501 |
QHttpServerResponder::StatusCode::BadGateway | 502 |
QHttpServerResponder::StatusCode::ServiceUnavailable | 503 |
QHttpServerResponder::StatusCode::GatewayTimeout | 504 |
QHttpServerResponder::StatusCode::HttpVersionNotSupported | 505 |
QHttpServerResponder::StatusCode::VariantAlsoNegotiates | 506 |
QHttpServerResponder::StatusCode::InsufficientStorage | 507 |
QHttpServerResponder::StatusCode::LoopDetected | 508 |
QHttpServerResponder::StatusCode::NotExtended | 510 |
QHttpServerResponder::StatusCode::NetworkAuthenticationRequired | 511 |
QHttpServerResponder::StatusCode::NetworkConnectTimeoutError | 599 |
Dokumentation der Mitgliedsfunktion
[noexcept]
QHttpServerResponder::QHttpServerResponder(QHttpServerResponder &&other)
Move-konstruiert eine QHttpServerResponder-Instanz, die auf das gleiche Objekt zeigt, auf das other gezeigt hat.
[noexcept]
QHttpServerResponder::~QHttpServerResponder()
Zerstört eine QHttpServerResponder.
[since 6.5]
void QHttpServerResponder::sendResponse(const QHttpServerResponse &response)
Sendet ein HTTP 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 mit diesem QHttpServerResponder aus. Dieser Vorgang ist sehr schnell und schlägt nie fehl.
Diese Funktion wurde in Qt 6.8 eingeführt.
void QHttpServerResponder::write(QHttpServerResponder::StatusCode status = StatusCode::Ok)
Beantwortet eine Anfrage mit einem HTTP-Statuscode status.
Hinweis: Diese Funktion setzt den HTTP Content-Type Header 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 einem HTTP-Statuscode status und einem JSON-Dokument document.
Hinweis: Diese Funktion setzt den HTTP Content-Type Header auf "application/json".
void QHttpServerResponder::write(QIODevice *data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Beantwortet eine Anfrage mit einem HTTP-Statuscode status und einem MIME-Typ mimeType. Das E/A-Gerät data liefert den Hauptteil der Antwort. Wenn data sequentiell ist, wird der Nachrichtentext in Stücken gesendet; andernfalls geht die Funktion davon aus, dass der gesamte Inhalt verfügbar ist und sendet ihn auf einmal, aber das Lesen erfolgt in Stücken.
Hinweis: Diese Funktion übernimmt den Besitz von data.
void QHttpServerResponder::write(QIODevice *data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Beantwortet eine Anfrage mit einem HTTP-Statuscode status und HTTP-Headern headers. Das E/A-Gerät data liefert den Hauptteil der Antwort. Wenn data sequentiell ist, wird der Nachrichtentext in Stücken gesendet; andernfalls geht die Funktion davon aus, dass der gesamte Inhalt verfügbar ist und sendet ihn auf einmal, aber das Lesen erfolgt in Stücken.
Hinweis: Diese Funktion übernimmt den Besitz von data.
void QHttpServerResponder::write(const QByteArray &data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Beantwortet eine Anfrage mit einem HTTP-Statuscode status, einem MIME-Typ mimeType und einem Body 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 Content-Length Header.
void QHttpServerResponder::write(const QJsonDocument &document, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Beantwortet eine Anfrage mit einem HTTP-Statuscode status, einem JSON-Dokument document und HTTP-Headern headers.
Hinweis: Diese Funktion setzt den HTTP Content-Type Header auf "application/json".
[since 6.8]
void QHttpServerResponder::writeBeginChunked(const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Starten Sie das Senden von Datenpaketen mit dem Mime-Typ mimeType und dem angegebenen Statuscode status. Dieser Aufruf muss mit einer beliebigen Anzahl von wiederholten Aufrufen von writeChunk
und und einem einzigen Aufruf von writeEndChunked
gefolgt werden.
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)
Starten Sie das Senden von Datenpaketen mit headers und und dem Statuscode status. Auf diesen Aufruf muss eine beliebige Anzahl von wiederholten Aufrufen von writeChunk
und und 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)
Starten Sie das Senden von Datenpaketen mit headers und und dem angegebenen Statuscode status. Diesem Aufruf muss eine beliebige Anzahl von wiederholten Aufrufen von writeChunk
und und ein einzelner Aufruf von writeEndChunked
mit denselben in trailers angegebenen Anhängern folgen.
Diese Funktion wurde in Qt 6.8 eingeführt.
Siehe auch writeChunk und writeEndChunked.
[since 6.8]
void QHttpServerResponder::writeChunk(const QByteArray &data)
Schreiben Sie data zurück an den Client. Wird aufgerufen, wenn Daten zum Schreiben verfügbar sind. Diese Funktion kann mehrfach aufgerufen werden, jedoch muss vor dem Aufruf dieser Funktion writeBeginChunked
aufgerufen werden und danach muss 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. Muss einem 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 zurück an den Client mit dem in writeBeginChunked
angekündigten trailers.
Diese Funktion wurde in Qt 6.8 eingeführt.
Siehe auch writeBeginChunked und writeChunk.
© 2025 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.