QHttpServerResponder Class
API permettant d'envoyer des réponses à partir d'un serveur HTTP. Plus d'informations...
| En-tête : | #include <QHttpServerResponder> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS HttpServer)target_link_libraries(mytarget PRIVATE Qt6::HttpServer) |
| qmake : | QT += httpserver |
| Depuis : | Qt 6.4 |
Types publics
| enum class | StatusCode { Continue, SwitchingProtocols, Processing, Ok, Created, …, NetworkConnectTimeoutError } |
Fonctions publiques
| 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) |
Description détaillée
Fournit des fonctions pour écrire à un client HTTP avec des surcharges pour sérialiser des objets JSON. Il prend également en charge l'écriture des en-têtes HTTP et du code d'état.
Documentation des types de membres
enum class QHttpServerResponder::StatusCode
Codes d'état HTTP
| Constante | Valeur |
|---|---|
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 |
Fonction membre Documentation
[noexcept] QHttpServerResponder::QHttpServerResponder(QHttpServerResponder &&other)
Move-construit une instance de QHttpServerResponder, en la faisant pointer sur le même objet que celui vers lequel other pointait.
[noexcept] QHttpServerResponder::~QHttpServerResponder()
Détruit un QHttpServerResponder.
[since 6.11] bool QHttpServerResponder::isResponseCanceled() const
Retourne vrai si le client a annulé la réponse. Utilisé pour permettre de quitter le gestionnaire plus tôt lorsque la réponse est annulée.
Cette fonction a été introduite dans Qt 6.11.
[since 6.5] void QHttpServerResponder::sendResponse(const QHttpServerResponse &response)
Envoie un HTTP response au client.
Cette fonction a été introduite dans Qt 6.5.
[noexcept, since 6.8] void QHttpServerResponder::swap(QHttpServerResponder &other)
Remplace QHttpServerResponder other par QHttpServerResponder. Cette opération est très rapide et n'échoue jamais.
Cette fonction a été introduite dans Qt 6.8.
void QHttpServerResponder::write(QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status.
Note : Cette fonction définit l'en-tête HTTP Content-Type comme étant "application/x-empty".
void QHttpServerResponder::write(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status et des en-têtes HTTP headers.
void QHttpServerResponder::write(const QJsonDocument &document, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status, et un document JSON document.
Remarque : Cette fonction définit l'en-tête HTTP Content-Type comme étant "application/json".
void QHttpServerResponder::write(QIODevice *data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status et un type MIME mimeType. Le dispositif d'E/S data fournit le corps de la réponse. Si data est séquentiel, le corps du message est envoyé par morceaux ; sinon, la fonction suppose que tout le contenu est disponible et l'envoie en une seule fois, mais la lecture se fait par morceaux.
Remarque : cette fonction prend la propriété de data.
void QHttpServerResponder::write(QIODevice *data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status et des en-têtes HTTP headers. Le dispositif d'E/S data fournit le corps de la réponse. Si data est séquentiel, le corps du message est envoyé par morceaux ; sinon, la fonction suppose que tout le contenu est disponible et l'envoie en une seule fois, mais la lecture se fait par morceaux.
Remarque : cette fonction prend la propriété de data.
void QHttpServerResponder::write(const QByteArray &data, const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status, un type MIME mimeType et un corps data.
void QHttpServerResponder::write(const QByteArray &data, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status, des en-têtes HTTP headers et un corps data.
Note : Cette fonction définit l'en-tête HTTP Content-Length.
void QHttpServerResponder::write(const QJsonDocument &document, const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Répond à une demande avec un code d'état HTTP status, un document JSON document et des en-têtes HTTP headers.
Remarque : Cette fonction définit l'en-tête HTTP Content-Type comme étant "application/json".
[since 6.8] void QHttpServerResponder::writeBeginChunked(const QByteArray &mimeType, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Commencer à envoyer des morceaux de données avec le type mime mimeType et le code d'état donné status. Cet appel doit être suivi d'un nombre arbitraire d'appels répétés à writeChunk et d'un seul appel à writeEndChunked.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi writeChunk et writeEndChunked.
[since 6.8] void QHttpServerResponder::writeBeginChunked(const QHttpHeaders &headers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Commencez à envoyer des morceaux de données avec headers et le code d'état status. Cet appel doit être suivi d'un nombre arbitraire d'appels répétés à writeChunk et d'un seul appel à writeEndChunked.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi writeChunk et writeEndChunked.
[since 6.8] void QHttpServerResponder::writeBeginChunked(const QHttpHeaders &headers, QList<QHttpHeaders::WellKnownHeader> trailers, QHttpServerResponder::StatusCode status = StatusCode::Ok)
Commencez à envoyer des morceaux de données avec headers et le code d'état donné status. Cet appel doit être suivi d'un nombre arbitraire d'appels répétés à writeChunk et d'un appel unique à writeEndChunked avec les mêmes trailers que ceux indiqués dans trailers.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi writeChunk et writeEndChunked.
[since 6.8] void QHttpServerResponder::writeChunk(const QByteArray &data)
Écrire data au client. À appeler lorsque des données sont disponibles pour l'écriture. Cette fonction peut être appelée plusieurs fois, mais avant de l'appeler, writeBeginChunked doit être appelé, et ensuite writeEndChunked doit être appelé.
Cette fonction a été introduite dans Qt 6.8.
Voir également writeBeginChunked et writeEndChunked.
[since 6.8] void QHttpServerResponder::writeEndChunked(const QByteArray &data)
Renvoyer data au client. Doit être précédé d'un appel à writeBeginChunked.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi writeBeginChunked et writeChunk.
[since 6.8] void QHttpServerResponder::writeEndChunked(const QByteArray &data, const QHttpHeaders &trailers)
Renvoyer data au client avec le trailers annoncé dans writeBeginChunked.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi writeBeginChunked et 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.