QHttpHeaders Class

QHttpHeaders は HTTP ヘッダーを保持するクラスです。詳細...

ヘッダー #include <QHttpHeaders>
CMake: find_package(Qt6 REQUIRED COMPONENTS Network)
target_link_libraries(mytarget PRIVATE Qt6::Network)
qmake: QT += network
以来:Qt 6.7

パブリックな型

enum class WellKnownHeader { AIM, Accept, AcceptAdditions, AcceptCH, AcceptDatetime, …, ProtocolQuery }

パブリック関数

QHttpHeaders()
QHttpHeaders(const QHttpHeaders &other)
QHttpHeaders(QHttpHeaders &&other)
~QHttpHeaders()
bool append(QAnyStringView name, QAnyStringView value)
bool append(QHttpHeaders::WellKnownHeader name, QAnyStringView value)
void clear()
QByteArray combinedValue(QAnyStringView name) const
QByteArray combinedValue(QHttpHeaders::WellKnownHeader name) const
bool contains(QAnyStringView name) const
bool contains(QHttpHeaders::WellKnownHeader name) const
bool insert(qsizetype i, QAnyStringView name, QAnyStringView value)
bool insert(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView value)
bool isEmpty() const
QLatin1StringView nameAt(qsizetype i) const
void removeAll(QAnyStringView name)
void removeAll(QHttpHeaders::WellKnownHeader name)
void removeAt(qsizetype i)
bool replace(qsizetype i, QAnyStringView name, QAnyStringView newValue)
bool replace(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)
(since 6.8) bool replaceOrAppend(QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)
bool replaceOrAppend(QAnyStringView name, QAnyStringView newValue)
void reserve(qsizetype size)
qsizetype size() const
void swap(QHttpHeaders &other)
QList<std::pair<QByteArray, QByteArray>> toListOfPairs() const
QMultiHash<QByteArray, QByteArray> toMultiHash() const
QMultiMap<QByteArray, QByteArray> toMultiMap() const
QByteArrayView value(QAnyStringView name, QByteArrayView defaultValue = {}) const
QByteArrayView value(QHttpHeaders::WellKnownHeader name, QByteArrayView defaultValue = {}) const
QByteArrayView valueAt(qsizetype i) const
QList<QByteArray> values(QAnyStringView name) const
QList<QByteArray> values(QHttpHeaders::WellKnownHeader name) const
QHttpHeaders &operator=(QHttpHeaders &&other)
QHttpHeaders &operator=(const QHttpHeaders &other)

静的パブリックメンバ

QHttpHeaders fromListOfPairs(const QList<std::pair<QByteArray, QByteArray>> &headers)
QHttpHeaders fromMultiHash(const QMultiHash<QByteArray, QByteArray> &headers)
QHttpHeaders fromMultiMap(const QMultiMap<QByteArray, QByteArray> &headers)
QByteArrayView wellKnownHeaderName(QHttpHeaders::WellKnownHeader name)
QDebug operator<<(QDebug debug, const QHttpHeaders &headers)

詳細説明

このクラスは、このようなヘッダを使用または消費する Qt Networking API 用のインタフェース型です。

フィールド名と値の文字

HTTP ヘッダは名前と 値から構成されます。これらを設定する際、QHttpHeaders はnamevalueが HTTP RFC で許可されている文字のみを含むかどうかを検証します。詳しい情報はRFC 9110の5.1章と5.5章を参照してください。

つまり

  • name 可視ASCII文字で構成され、空であってはならない。
  • value value は空でもよい。

このクラスのセッターは、値の先頭や末尾の空白を自動的に取り除きます。

値の組み合わせ

ほとんどの HTTP ヘッダ値は、カンマ',' とオプションの空白文字で組み合わせることができ、 意味は保持されます。例として、これら二つは意味的に似ているはずです:

// Values as separate header entries
myheadername: myheadervalue1
myheadername: myheadervalue2
// Combined value
myheadername: myheadervalue1, myheadervalue2

しかし、このルールには顕著な例外があります:Set-Cookieである。このことと、カスタムな使用例の可能性のために、QHttpHeaders は自動的に値を結合しません。

パフォーマンス

ほとんどの QHttpHeaders 関数は、QHttpHeaders::WellKnownHeaderQAnyStringView の両方のオーバーロードを提供します。メモリ使用量と計算量の観点から、QHttpHeaders::WellKnownHeader のオーバーロードを使用することをお勧めします。

メンバ型ドキュメント

enum class QHttpHeaders::WellKnownHeader

IANA レジストリによる、よく知られたヘッダのリスト。

定数
QHttpHeaders::WellKnownHeader::AIM0
QHttpHeaders::WellKnownHeader::Accept1
QHttpHeaders::WellKnownHeader::AcceptAdditions2
QHttpHeaders::WellKnownHeader::AcceptCH3
QHttpHeaders::WellKnownHeader::AcceptDatetime4
QHttpHeaders::WellKnownHeader::AcceptEncoding5
QHttpHeaders::WellKnownHeader::AcceptFeatures6
QHttpHeaders::WellKnownHeader::AcceptLanguage7
QHttpHeaders::WellKnownHeader::AcceptPatch8
QHttpHeaders::WellKnownHeader::AcceptPost9
QHttpHeaders::WellKnownHeader::AcceptRanges10
QHttpHeaders::WellKnownHeader::AcceptSignature11
QHttpHeaders::WellKnownHeader::AccessControlAllowCredentials12
QHttpHeaders::WellKnownHeader::AccessControlAllowHeaders13
QHttpHeaders::WellKnownHeader::AccessControlAllowMethods14
QHttpHeaders::WellKnownHeader::AccessControlAllowOrigin15
QHttpHeaders::WellKnownHeader::AccessControlExposeHeaders16
QHttpHeaders::WellKnownHeader::AccessControlMaxAge17
QHttpHeaders::WellKnownHeader::AccessControlRequestHeaders18
QHttpHeaders::WellKnownHeader::AccessControlRequestMethod19
QHttpHeaders::WellKnownHeader::Age20
QHttpHeaders::WellKnownHeader::Allow21
QHttpHeaders::WellKnownHeader::ALPN22
QHttpHeaders::WellKnownHeader::AltSvc23
QHttpHeaders::WellKnownHeader::AltUsed24
QHttpHeaders::WellKnownHeader::Alternates25
QHttpHeaders::WellKnownHeader::ApplyToRedirectRef26
QHttpHeaders::WellKnownHeader::AuthenticationControl27
QHttpHeaders::WellKnownHeader::AuthenticationInfo28
QHttpHeaders::WellKnownHeader::Authorization29
QHttpHeaders::WellKnownHeader::CacheControl30
QHttpHeaders::WellKnownHeader::CacheStatus31
QHttpHeaders::WellKnownHeader::CalManagedID32
QHttpHeaders::WellKnownHeader::CalDAVTimezones33
QHttpHeaders::WellKnownHeader::CapsuleProtocol34
QHttpHeaders::WellKnownHeader::CDNCacheControl35
QHttpHeaders::WellKnownHeader::CDNLoop36
QHttpHeaders::WellKnownHeader::CertNotAfter37
QHttpHeaders::WellKnownHeader::CertNotBefore38
QHttpHeaders::WellKnownHeader::ClearSiteData39
QHttpHeaders::WellKnownHeader::ClientCert40
QHttpHeaders::WellKnownHeader::ClientCertChain41
QHttpHeaders::WellKnownHeader::Close42
QHttpHeaders::WellKnownHeader::Connection43
QHttpHeaders::WellKnownHeader::ContentDigest44
QHttpHeaders::WellKnownHeader::ContentDisposition45
QHttpHeaders::WellKnownHeader::ContentEncoding46
QHttpHeaders::WellKnownHeader::ContentID47
QHttpHeaders::WellKnownHeader::ContentLanguage48
QHttpHeaders::WellKnownHeader::ContentLength49
QHttpHeaders::WellKnownHeader::ContentLocation50
QHttpHeaders::WellKnownHeader::ContentRange51
QHttpHeaders::WellKnownHeader::ContentSecurityPolicy52
QHttpHeaders::WellKnownHeader::ContentSecurityPolicyReportOnly53
QHttpHeaders::WellKnownHeader::ContentType54
QHttpHeaders::WellKnownHeader::Cookie55
QHttpHeaders::WellKnownHeader::CrossOriginEmbedderPolicy56
QHttpHeaders::WellKnownHeader::CrossOriginEmbedderPolicyReportOnly57
QHttpHeaders::WellKnownHeader::CrossOriginOpenerPolicy58
QHttpHeaders::WellKnownHeader::CrossOriginOpenerPolicyReportOnly59
QHttpHeaders::WellKnownHeader::CrossOriginResourcePolicy60
QHttpHeaders::WellKnownHeader::DASL61
QHttpHeaders::WellKnownHeader::Date62
QHttpHeaders::WellKnownHeader::DAV63
QHttpHeaders::WellKnownHeader::DeltaBase64
QHttpHeaders::WellKnownHeader::Depth65
QHttpHeaders::WellKnownHeader::Destination66
QHttpHeaders::WellKnownHeader::DifferentialID67
QHttpHeaders::WellKnownHeader::DPoP68
QHttpHeaders::WellKnownHeader::DPoPNonce69
QHttpHeaders::WellKnownHeader::EarlyData70
QHttpHeaders::WellKnownHeader::ETag71
QHttpHeaders::WellKnownHeader::Expect72
QHttpHeaders::WellKnownHeader::ExpectCT73
QHttpHeaders::WellKnownHeader::Expires74
QHttpHeaders::WellKnownHeader::Forwarded75
QHttpHeaders::WellKnownHeader::From76
QHttpHeaders::WellKnownHeader::Hobareg77
QHttpHeaders::WellKnownHeader::Host78
QHttpHeaders::WellKnownHeader::If79
QHttpHeaders::WellKnownHeader::IfMatch80
QHttpHeaders::WellKnownHeader::IfModifiedSince81
QHttpHeaders::WellKnownHeader::IfNoneMatch82
QHttpHeaders::WellKnownHeader::IfRange83
QHttpHeaders::WellKnownHeader::IfScheduleTagMatch84
QHttpHeaders::WellKnownHeader::IfUnmodifiedSince85
QHttpHeaders::WellKnownHeader::IM86
QHttpHeaders::WellKnownHeader::IncludeReferredTokenBindingID87
QHttpHeaders::WellKnownHeader::KeepAlive88
QHttpHeaders::WellKnownHeader::Label89
QHttpHeaders::WellKnownHeader::LastEventID90
QHttpHeaders::WellKnownHeader::LastModified91
QHttpHeaders::WellKnownHeader::Link92
QHttpHeaders::WellKnownHeader::Location93
QHttpHeaders::WellKnownHeader::LockToken94
QHttpHeaders::WellKnownHeader::MaxForwards95
QHttpHeaders::WellKnownHeader::MementoDatetime96
QHttpHeaders::WellKnownHeader::Meter97
QHttpHeaders::WellKnownHeader::MIMEVersion98
QHttpHeaders::WellKnownHeader::Negotiate99
QHttpHeaders::WellKnownHeader::NEL100
QHttpHeaders::WellKnownHeader::ODataEntityId101
QHttpHeaders::WellKnownHeader::ODataIsolation102
QHttpHeaders::WellKnownHeader::ODataMaxVersion103
QHttpHeaders::WellKnownHeader::ODataVersion104
QHttpHeaders::WellKnownHeader::OptionalWWWAuthenticate105
QHttpHeaders::WellKnownHeader::OrderingType106
QHttpHeaders::WellKnownHeader::Origin107
QHttpHeaders::WellKnownHeader::OriginAgentCluster108
QHttpHeaders::WellKnownHeader::OSCORE109
QHttpHeaders::WellKnownHeader::OSLCCoreVersion110
QHttpHeaders::WellKnownHeader::Overwrite111
QHttpHeaders::WellKnownHeader::PingFrom112
QHttpHeaders::WellKnownHeader::PingTo113
QHttpHeaders::WellKnownHeader::Position114
QHttpHeaders::WellKnownHeader::Prefer115
QHttpHeaders::WellKnownHeader::PreferenceApplied116
QHttpHeaders::WellKnownHeader::Priority117
QHttpHeaders::WellKnownHeader::ProxyAuthenticate118
QHttpHeaders::WellKnownHeader::ProxyAuthenticationInfo119
QHttpHeaders::WellKnownHeader::ProxyAuthorization120
QHttpHeaders::WellKnownHeader::ProxyStatus121
QHttpHeaders::WellKnownHeader::PublicKeyPins122
QHttpHeaders::WellKnownHeader::PublicKeyPinsReportOnly123
QHttpHeaders::WellKnownHeader::Range124
QHttpHeaders::WellKnownHeader::RedirectRef125
QHttpHeaders::WellKnownHeader::Referer126
QHttpHeaders::WellKnownHeader::Refresh127
QHttpHeaders::WellKnownHeader::ReplayNonce128
QHttpHeaders::WellKnownHeader::ReprDigest129
QHttpHeaders::WellKnownHeader::RetryAfter130
QHttpHeaders::WellKnownHeader::ScheduleReply131
QHttpHeaders::WellKnownHeader::ScheduleTag132
QHttpHeaders::WellKnownHeader::SecPurpose133
QHttpHeaders::WellKnownHeader::SecTokenBinding134
QHttpHeaders::WellKnownHeader::SecWebSocketAccept135
QHttpHeaders::WellKnownHeader::SecWebSocketExtensions136
QHttpHeaders::WellKnownHeader::SecWebSocketKey137
QHttpHeaders::WellKnownHeader::SecWebSocketProtocol138
QHttpHeaders::WellKnownHeader::SecWebSocketVersion139
QHttpHeaders::WellKnownHeader::Server140
QHttpHeaders::WellKnownHeader::ServerTiming141
QHttpHeaders::WellKnownHeader::SetCookie142
QHttpHeaders::WellKnownHeader::Signature143
QHttpHeaders::WellKnownHeader::SignatureInput144
QHttpHeaders::WellKnownHeader::SLUG145
QHttpHeaders::WellKnownHeader::SoapAction146
QHttpHeaders::WellKnownHeader::StatusURI147
QHttpHeaders::WellKnownHeader::StrictTransportSecurity148
QHttpHeaders::WellKnownHeader::Sunset149
QHttpHeaders::WellKnownHeader::SurrogateCapability150
QHttpHeaders::WellKnownHeader::SurrogateControl151
QHttpHeaders::WellKnownHeader::TCN152
QHttpHeaders::WellKnownHeader::TE153
QHttpHeaders::WellKnownHeader::Timeout154
QHttpHeaders::WellKnownHeader::Topic155
QHttpHeaders::WellKnownHeader::Traceparent156
QHttpHeaders::WellKnownHeader::Tracestate157
QHttpHeaders::WellKnownHeader::Trailer158
QHttpHeaders::WellKnownHeader::TransferEncoding159
QHttpHeaders::WellKnownHeader::TTL160
QHttpHeaders::WellKnownHeader::Upgrade161
QHttpHeaders::WellKnownHeader::Urgency162
QHttpHeaders::WellKnownHeader::UserAgent163
QHttpHeaders::WellKnownHeader::VariantVary164
QHttpHeaders::WellKnownHeader::Vary165
QHttpHeaders::WellKnownHeader::Via166
QHttpHeaders::WellKnownHeader::WantContentDigest167
QHttpHeaders::WellKnownHeader::WantReprDigest168
QHttpHeaders::WellKnownHeader::WWWAuthenticate169
QHttpHeaders::WellKnownHeader::XContentTypeOptions170
QHttpHeaders::WellKnownHeader::XFrameOptions171
QHttpHeaders::WellKnownHeader::AcceptCharset172
QHttpHeaders::WellKnownHeader::CPEPInfo173
QHttpHeaders::WellKnownHeader::Pragma174
QHttpHeaders::WellKnownHeader::ProtocolInfo175
QHttpHeaders::WellKnownHeader::ProtocolQuery176

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

[noexcept] QHttpHeaders::QHttpHeaders()

新しい QHttpHeaders オブジェクトを作成します。

QHttpHeaders::QHttpHeaders(const QHttpHeaders &other)

other のコピーを作成する。

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

移動-other からオブジェクトを構築し、empty に残す。

[noexcept] QHttpHeaders::~QHttpHeaders()

ヘッダーオブジェクトを破棄します。

bool QHttpHeaders::append(QAnyStringView name, QAnyStringView value)

ヘッダエントリをnamevalue で追加し、成功した場合はtrue を返します。

append(QHttpHeaders::WellKnownHeader, QAnyStringView) およびAllowed field name and value charactersも参照してください

bool QHttpHeaders::append(QHttpHeaders::WellKnownHeader name, QAnyStringView value)

この関数はappend(QAnyStringView, QAnyStringView) をオーバーロードします。

void QHttpHeaders::clear()

すべてのヘッダー・エントリーをクリアする。

size()も参照のこと

QByteArray QHttpHeaders::combinedValue(QAnyStringView name) const

ヘッダーname の値をカンマで結合した文字列で返す。name を持つヘッダーが存在しない場合、null QByteArray を返す。

注意: 'Set-Cookie'ヘッダーの値にこの方法でアクセスすることは、 意図したようには動作しないかもしれない。HTTPのRFCでは、この方法で値を組み合わせることができないという、特筆すべき例外があります。代わりにvalues() を使ってください。

values(QAnyStringView)参照してください。

QByteArray QHttpHeaders::combinedValue(QHttpHeaders::WellKnownHeader name) const

この関数はcombinedValue(QAnyStringView) をオーバーロードします。

bool QHttpHeaders::contains(QAnyStringView name) const

ヘッダにname のヘッダが含まれているかどうかを返します。

contains(QHttpHeaders::WellKnownHeader)も参照してください

bool QHttpHeaders::contains(QHttpHeaders::WellKnownHeader name) const

この関数は has(QAnyStringView) をオーバーロードします。

[static] QHttpHeaders QHttpHeaders::fromListOfPairs(const QList<std::pair<QByteArray, QByteArray>> &headers)

headers を含む新しいQHttpHeaders オブジェクトを作成する。

Allowed field name and value charactersも参照

[static] QHttpHeaders QHttpHeaders::fromMultiHash(const QMultiHash<QByteArray, QByteArray> &headers)

headers を含む新しいQHttpHeaders オブジェクトを作成する。

Allowed field name and value charactersも参照

[static] QHttpHeaders QHttpHeaders::fromMultiMap(const QMultiMap<QByteArray, QByteArray> &headers)

headers を含む新しいQHttpHeaders オブジェクトを作成する。

Allowed field name and value charactersも参照

bool QHttpHeaders::insert(qsizetype i, QAnyStringView name, QAnyStringView value)

name valueインデックスi にヘッダーエントリーを挿入する。インデックスは有効でなければならない (size() を参照)。挿入が成功したかどうかを返します。

append()、insert(qsizetype, QHttpHeaders::WellKnownHeader, QAnyStringView)、size()、およびAllowed field name and value charactersも参照してください

bool QHttpHeaders::insert(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView value)

この関数はinsert(qsizetype, QAnyStringView, QAnyStringView) をオーバーロードします。

[noexcept] bool QHttpHeaders::isEmpty() const

ヘッダーのサイズが 0 の場合はtrue を返し、そうでない場合はfalse を返す。

size()も参照のこと

[noexcept] QLatin1StringView QHttpHeaders::nameAt(qsizetype i) const

インデックスi にあるヘッダー名を返す。インデックスi は有効でなければならない (size() を参照)。

ヘッダー名は大文字小文字を区別しません。

size() およびvalueAt()も参照

void QHttpHeaders::removeAll(QAnyStringView name)

ヘッダname を削除します。

removeAt() およびremoveAll(QHttpHeaders::WellKnownHeader)も参照してください

void QHttpHeaders::removeAll(QHttpHeaders::WellKnownHeader name)

この関数はremoveAll(QAnyStringView) をオーバーロードします。

void QHttpHeaders::removeAt(qsizetype i)

インデックスi のヘッダーを削除する。インデックスi は有効でなければなりません (size() を参照)。

removeAll(QHttpHeaders::WellKnownHeader)、removeAll(QAnyStringView)、およびsize()も参照してください

bool QHttpHeaders::replace(qsizetype i, QAnyStringView name, QAnyStringView newValue)

インデックスi のヘッダーエントリーをnamenewValue で置き換える。インデックスは有効でなければならない (size() を参照)。置換が成功したかどうかを返します。

append()、replace(qsizetype, QHttpHeaders::WellKnownHeader, QAnyStringView)、size()、およびAllowed field name and value charactersも参照ください

bool QHttpHeaders::replace(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)

この関数はreplace(qsizetype, QAnyStringView, QAnyStringView) をオーバーロードします。

[since 6.8] bool QHttpHeaders::replaceOrAppend(QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)

QHttpHeaders がすでにname を含んでいる場合、その値をnewValue に置き換え、追加される可能性のあるname エントリを削除する。name が存在しなかった場合、新しいエントリを追加する。成功すればtrue を返す。

この関数は、一意なname:newValue ヘッダーを設定するための便利なメソッドである。ほとんどのヘッダでは、相対的な順序は問題ではないので、既存のエントリがあればそれを再利用できます。

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

replaceOrAppend(QAnyStringView, QAnyStringView)も参照してください

bool QHttpHeaders::replaceOrAppend(QAnyStringView name, QAnyStringView newValue)

この関数は、replaceOrAppend(WellKnownHeader, QAnyStringView)をオーバーロードします。

void QHttpHeaders::reserve(qsizetype size)

少なくともsize 個のヘッダーエントリーのためのメモリーを割り当てようとする。

事前にヘッダーエントリーの数がわかっている場合は、再割り当てやメモリーの断片化を防ぐためにこの関数を呼んでもよい。

[noexcept] qsizetype QHttpHeaders::size() const

ヘッダー・エントリーの数を返す。

[noexcept] void QHttpHeaders::swap(QHttpHeaders &other)

このQHttpHeadersother と入れ替える。この操作は非常に速く、失敗することはない。

QList<std::pair<QByteArray, QByteArray>> QHttpHeaders::toListOfPairs() const

ヘッダーエントリーを(name, value)ペアのリストとして返す。ヘッダ名は大文字小文字を区別しません。

QMultiHash<QByteArray, QByteArray> QHttpHeaders::toMultiHash() const

ヘッダーエントリーを名前から値へのハッシュとして返す。ヘッダ名は大文字小文字を区別しません。

QMultiMap<QByteArray, QByteArray> QHttpHeaders::toMultiMap() const

ヘッダーエントリーを名前から値へのマップとして返す。ヘッダ名は大文字小文字を区別しません。

[noexcept] QByteArrayView QHttpHeaders::value(QAnyStringView name, QByteArrayView defaultValue = {}) const

(最初の)ヘッダname の値を返し、存在しない場合はdefaultValue を返します。

value(QHttpHeaders::WellKnownHeader、QByteArrayView)も参照してください

[noexcept] QByteArrayView QHttpHeaders::value(QHttpHeaders::WellKnownHeader name, QByteArrayView defaultValue = {}) const

この関数はvalue(QAnyStringView, QByteArrayView) をオーバーロードします。

[noexcept] QByteArrayView QHttpHeaders::valueAt(qsizetype i) const

インデックスi のヘッダー値を返す。インデックスi は有効でなければならない (size() を参照)。

size()、value()、values()、combinedValue()、nameAt()も参照

QList<QByteArray> QHttpHeaders::values(QAnyStringView name) const

ヘッダーname の値をリストで返す。name を持つヘッダが存在しない場合は空のリストを返します。

values(QHttpHeaders::WellKnownHeader)も参照してください

QList<QByteArray> QHttpHeaders::values(QHttpHeaders::WellKnownHeader name) const

この関数はvalues(QAnyStringView) をオーバーロードします。

[static noexcept] QByteArrayView QHttpHeaders::wellKnownHeaderName(QHttpHeaders::WellKnownHeader name)

指定されたname に対応するヘッダー名をビューとして返します。

[noexcept] QHttpHeaders &QHttpHeaders::operator=(QHttpHeaders &&other)

Move-assignother 、このオブジェクトへの参照を返す。

other は に残される。empty

QHttpHeaders &QHttpHeaders::operator=(const QHttpHeaders &other)

other の内容を代入し、このオブジェクトへの参照を返す。

関連する非会員

QDebug operator<<(QDebug debug, const QHttpHeaders &headers)

debug ストリームにheaders を書き込む。

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