QHttpServerResponder Class

HTTPサーバーから返信を送信するためのAPI。詳細...

ヘッダー #include <QHttpServerResponder>
CMake: find_package(Qt6 REQUIRED COMPONENTS HttpServer)
target_link_libraries(mytarget PRIVATE Qt6::HttpServer)
qmake: QT += httpserver
以来:Qt 6.4

パブリックな型

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

パブリック関数

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)

詳しい説明

JSON オブジェクトをシリアライズするためのオーバーロードを持つ HTTP クライアントに書き戻すための関数を提供します。また、HTTP ヘッダとステータスコードの書き込みもサポートしています。

メンバ型ドキュメント

enum class QHttpServerResponder::StatusCode

HTTPステータスコード

定数
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

メンバー関数ドキュメント

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

Move - QHttpServerResponder インスタンスを構築し、other が指していたのと同じオブジェクトを指すようにします。

[noexcept] QHttpServerResponder::~QHttpServerResponder()

QHttpServerResponder を破壊する。

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

HTTPresponse をクライアントに送信します。

この関数は Qt 6.5 で導入されました。

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

QHttpServerResponder other をこのQHttpServerResponder と入れ替える。この操作は非常に高速で、失敗することはありません。

この関数は Qt 6.8 で導入されました。

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

HTTP ステータスコードstatus でリクエストに応答する。

注:この関数はHTTP Content-Typeヘッダーを "application/x-empty "に設定する。

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

HTTPステータスコードstatus 、HTTPヘッダーheaders

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

HTTPステータスコードstatus 、JSONドキュメントdocument を持つリクエストに応答する。

注:この関数は、HTTP Content-Typeヘッダーを "application/json "に設定する。

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

HTTPステータスコードstatus とMIMEタイプmimeType を持つリクエストに答える。I/Oデバイスdata は応答のボディを提供する。data がシーケンシャルな場合、メッセージのボディはチャンクで送信される。そうでない場合、この関数はすべてのコンテンツが利用可能であると仮定し、一度に送信するが、読み込みはチャンクで行われる。

注: この関数はdata の所有権を持つ。

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

HTTPステータスコードstatus とHTTPヘッダーheaders を持つリクエストに答える。I/Oデバイスdata は、レスポンスのボディを提供する。data がシーケンシャルな場合、メッセージのボディはチャンクで送信される。そうでない場合、この関数はすべてのコンテンツが利用可能であると仮定し、一度に送信するが、読み込みはチャンクで行われる。

注: この関数はdata の所有権を持つ。

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

HTTPステータスコードstatus 、MIMEタイプmimeType 、ボディdata

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

HTTP ステータスコードstatus 、HTTP ヘッダーheaders 、ボディdata を持つリクエストに応答する。

注:この関数はHTTP Content-Lengthヘッダーを設定する。

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

HTTP ステータスコードstatus 、JSON ドキュメントdocument 、HTTP ヘッダーheaders を持つリクエストに応答する。

注:この関数は、HTTP Content-Typeヘッダーを "application/json "に設定する。

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

MIMEタイプmimeType 、指定されたステータスコードstatus を持つデータチャンクの送信を開始する。この呼び出しの後には、writeChunk を任意の回数繰り返し呼び出し、writeEndChunked を1回呼び出す必要があります。

この関数は Qt 6.8 で導入されました。

writeChunkwriteEndChunkedも参照してください

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

headers とステータスコードstatus でデータチャンクの送信を開始する。この呼び出しの後には、writeChunk の呼び出しと、writeEndChunked の呼び出しを任意の回数繰り返す必要があります。

この関数は Qt 6.8 で導入されました。

writeChunkwriteEndChunkedも参照してください

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

headers 、指定されたステータスコードstatus でデータのチャンクの送信を開始する。この呼び出しの後には、writeChunk の呼び出しと、trailers で指定された同じトレイラーを持つwriteEndChunked の呼び出しを、任意の回数繰り返す必要があります。

この関数は Qt 6.8 で導入されました。

writeChunkwriteEndChunkedも参照してください

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

data をクライアントに書き戻す。データが書き込み可能になったときに呼び出される。この関数は複数回呼び出すことができますが、writeBeginChunked を呼び出す前に、writeEndChunked を呼び出す必要があります。

この関数は Qt 6.8 で導入されました。

writeBeginChunkedwriteEndChunkedも参照してください

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

data をクライアントに書き戻す。その前にwriteBeginChunked を呼び出す必要があります。

この関数は Qt 6.8 で導入されました。

writeBeginChunked およびwriteChunkも参照してください

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

writeBeginChunked で発表されたtrailersdata をクライアントに書き戻す。

この関数は Qt 6.8 で導入されました。

writeBeginChunkedwriteChunkも参照してください

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