QHttpHeaders Class
QHttpHeaders est une classe permettant de stocker des en-têtes HTTP. En savoir plus...
| En-tête : | #include <QHttpHeaders> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
| qmake : | QT += network |
| Depuis : | Qt 6.7 |
Types publics
| enum class | WellKnownHeader { AIM, Accept, AcceptAdditions, AcceptCH, AcceptDatetime, …, ProtocolQuery } |
Fonctions publiques
| 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 |
(since 6.10) std::optional<QDateTime> | dateTimeValue(QAnyStringView name) const |
(since 6.10) std::optional<QDateTime> | dateTimeValue(QHttpHeaders::WellKnownHeader name) const |
(since 6.10) std::optional<QDateTime> | dateTimeValueAt(qsizetype i) const |
(since 6.10) std::optional<QList<QDateTime>> | dateTimeValues(QAnyStringView name) const |
(since 6.10) std::optional<QList<QDateTime>> | dateTimeValues(QHttpHeaders::WellKnownHeader name) const |
| bool | insert(qsizetype i, QAnyStringView name, QAnyStringView value) |
| bool | insert(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView value) |
(since 6.10) std::optional<qint64> | intValue(QAnyStringView name) const |
(since 6.10) std::optional<qint64> | intValue(QHttpHeaders::WellKnownHeader name) const |
(since 6.10) std::optional<qint64> | intValueAt(qsizetype i) const |
(since 6.10) std::optional<QList<qint64>> | intValues(QAnyStringView name) const |
(since 6.10) std::optional<QList<qint64>> | intValues(QHttpHeaders::WellKnownHeader name) const |
| bool | isEmpty() const |
| QLatin1StringView | nameAt(qsizetype i) const |
(since 6.12) std::optional<QHttpHeaderRangeSet> | rangeValues() 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) |
(since 6.10) void | setDateTimeValue(QAnyStringView name, const QDateTime &dateTime) |
(since 6.10) void | setDateTimeValue(QHttpHeaders::WellKnownHeader name, const QDateTime &dateTime) |
(since 6.12) void | setRangeValues(const QHttpHeaderRangeSet &ranges) |
| 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) |
Membres publics statiques
| 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) |
Éléments non membres associés
(since 6.12) QDataStream & | operator<<(QDataStream &out, const QHttpHeaders &headers) |
| QDebug | operator<<(QDebug debug, const QHttpHeaders &headers) |
(since 6.12) QDataStream & | operator>>(QDataStream &in, QHttpHeaders &headers) |
Description détaillée
Cette classe est un type d'interface pour les API réseau Qt Network qui utilisent ou exploitent ces en-têtes.
Caractères autorisés pour les noms et valeurs de champs
Un en-tête HTTP se compose d’ un nom et d’une valeur. Lors de leur définition, QHttpHeaders vérifie que le nom et la valeur ne contiennent que des caractères autorisés par les RFC HTTP. Pour plus d’informations, consultez les chapitres 5.1 et 5.5 de la RFC 9110.
En résumé, cela signifie que :
namedoit être composé de caractères ASCII visibles et ne doit pas être videvaluepeut être constitué d’octets arbitraires, à condition que les règles d’encodage spécifiques à l’en-tête et au cas d’utilisation soient respectées. `value` peut être vide
Les méthodes de définition de cette classe suppriment automatiquement les espaces en début et en fin de la valeur, car ceux-ci doivent être ignorés lors du traitement de la valeur.
Combinaison de valeurs
La plupart des valeurs d’en-tête HTTP peuvent être combinées à l’aide d’une simple virgule ',' suivie d’un espace facultatif, tout en conservant leur signification sémantique. À titre d’exemple, ces deux valeurs devraient être sémantiquement similaires :
// Values as separate header entries
myheadername: myheadervalue1
myheadername: myheadervalue2
// Combined value
myheadername: myheadervalue1, myheadervalue2Il existe toutefois une exception notable à cette règle : Set-Cookie. En raison de cela et de la possibilité de cas d'utilisation personnalisés, QHttpHeaders ne combine pas automatiquement les valeurs.
Performances
La plupart des fonctions de QHttpHeaders proposent à la fois des surcharges de type « QHttpHeaders::WellKnownHeader » et « QAnyStringView ». Du point de vue de l’utilisation de la mémoire et des calculs, il est recommandé d’utiliser les surcharges de type « QHttpHeaders::WellKnownHeader ».
Documentation sur les types de membres
enum class QHttpHeaders::WellKnownHeader
Liste des en-têtes courants selon le registre de l'IANA.
| Constante | Valeur |
|---|---|
QHttpHeaders::WellKnownHeader::AIM | 0 |
QHttpHeaders::WellKnownHeader::Accept | 1 |
QHttpHeaders::WellKnownHeader::AcceptAdditions | 2 |
QHttpHeaders::WellKnownHeader::AcceptCH | 3 |
QHttpHeaders::WellKnownHeader::AcceptDatetime | 4 |
QHttpHeaders::WellKnownHeader::AcceptEncoding | 5 |
QHttpHeaders::WellKnownHeader::AcceptFeatures | 6 |
QHttpHeaders::WellKnownHeader::AcceptLanguage | 7 |
QHttpHeaders::WellKnownHeader::AcceptPatch | 8 |
QHttpHeaders::WellKnownHeader::AcceptPost | 9 |
QHttpHeaders::WellKnownHeader::AcceptRanges | 10 |
QHttpHeaders::WellKnownHeader::AcceptSignature | 11 |
QHttpHeaders::WellKnownHeader::AccessControlAllowCredentials | 12 |
QHttpHeaders::WellKnownHeader::AccessControlAllowHeaders | 13 |
QHttpHeaders::WellKnownHeader::AccessControlAllowMethods | 14 |
QHttpHeaders::WellKnownHeader::AccessControlAllowOrigin | 15 |
QHttpHeaders::WellKnownHeader::AccessControlExposeHeaders | 16 |
QHttpHeaders::WellKnownHeader::AccessControlMaxAge | 17 |
QHttpHeaders::WellKnownHeader::AccessControlRequestHeaders | 18 |
QHttpHeaders::WellKnownHeader::AccessControlRequestMethod | 19 |
QHttpHeaders::WellKnownHeader::Age | 20 |
QHttpHeaders::WellKnownHeader::Allow | 21 |
QHttpHeaders::WellKnownHeader::ALPN | 22 |
QHttpHeaders::WellKnownHeader::AltSvc | 23 |
QHttpHeaders::WellKnownHeader::AltUsed | 24 |
QHttpHeaders::WellKnownHeader::Alternates | 25 |
QHttpHeaders::WellKnownHeader::ApplyToRedirectRef | 26 |
QHttpHeaders::WellKnownHeader::AuthenticationControl | 27 |
QHttpHeaders::WellKnownHeader::AuthenticationInfo | 28 |
QHttpHeaders::WellKnownHeader::Authorization | 29 |
QHttpHeaders::WellKnownHeader::CacheControl | 30 |
QHttpHeaders::WellKnownHeader::CacheStatus | 31 |
QHttpHeaders::WellKnownHeader::CalManagedID | 32 |
QHttpHeaders::WellKnownHeader::CalDAVTimezones | 33 |
QHttpHeaders::WellKnownHeader::CapsuleProtocol | 34 |
QHttpHeaders::WellKnownHeader::CDNCacheControl | 35 |
QHttpHeaders::WellKnownHeader::CDNLoop | 36 |
QHttpHeaders::WellKnownHeader::CertNotAfter | 37 |
QHttpHeaders::WellKnownHeader::CertNotBefore | 38 |
QHttpHeaders::WellKnownHeader::ClearSiteData | 39 |
QHttpHeaders::WellKnownHeader::ClientCert | 40 |
QHttpHeaders::WellKnownHeader::ClientCertChain | 41 |
QHttpHeaders::WellKnownHeader::Close | 42 |
QHttpHeaders::WellKnownHeader::Connection | 43 |
QHttpHeaders::WellKnownHeader::ContentDigest | 44 |
QHttpHeaders::WellKnownHeader::ContentDisposition | 45 |
QHttpHeaders::WellKnownHeader::ContentEncoding | 46 |
QHttpHeaders::WellKnownHeader::ContentID | 47 |
QHttpHeaders::WellKnownHeader::ContentLanguage | 48 |
QHttpHeaders::WellKnownHeader::ContentLength | 49 |
QHttpHeaders::WellKnownHeader::ContentLocation | 50 |
QHttpHeaders::WellKnownHeader::ContentRange | 51 |
QHttpHeaders::WellKnownHeader::ContentSecurityPolicy | 52 |
QHttpHeaders::WellKnownHeader::ContentSecurityPolicyReportOnly | 53 |
QHttpHeaders::WellKnownHeader::ContentType | 54 |
QHttpHeaders::WellKnownHeader::Cookie | 55 |
QHttpHeaders::WellKnownHeader::CrossOriginEmbedderPolicy | 56 |
QHttpHeaders::WellKnownHeader::CrossOriginEmbedderPolicyReportOnly | 57 |
QHttpHeaders::WellKnownHeader::CrossOriginOpenerPolicy | 58 |
QHttpHeaders::WellKnownHeader::CrossOriginOpenerPolicyReportOnly | 59 |
QHttpHeaders::WellKnownHeader::CrossOriginResourcePolicy | 60 |
QHttpHeaders::WellKnownHeader::DASL | 61 |
QHttpHeaders::WellKnownHeader::Date | 62 |
QHttpHeaders::WellKnownHeader::DAV | 63 |
QHttpHeaders::WellKnownHeader::DeltaBase | 64 |
QHttpHeaders::WellKnownHeader::Depth | 65 |
QHttpHeaders::WellKnownHeader::Destination | 66 |
QHttpHeaders::WellKnownHeader::DifferentialID | 67 |
QHttpHeaders::WellKnownHeader::DPoP | 68 |
QHttpHeaders::WellKnownHeader::DPoPNonce | 69 |
QHttpHeaders::WellKnownHeader::EarlyData | 70 |
QHttpHeaders::WellKnownHeader::ETag | 71 |
QHttpHeaders::WellKnownHeader::Expect | 72 |
QHttpHeaders::WellKnownHeader::ExpectCT | 73 |
QHttpHeaders::WellKnownHeader::Expires | 74 |
QHttpHeaders::WellKnownHeader::Forwarded | 75 |
QHttpHeaders::WellKnownHeader::From | 76 |
QHttpHeaders::WellKnownHeader::Hobareg | 77 |
QHttpHeaders::WellKnownHeader::Host | 78 |
QHttpHeaders::WellKnownHeader::If | 79 |
QHttpHeaders::WellKnownHeader::IfMatch | 80 |
QHttpHeaders::WellKnownHeader::IfModifiedSince | 81 |
QHttpHeaders::WellKnownHeader::IfNoneMatch | 82 |
QHttpHeaders::WellKnownHeader::IfRange | 83 |
QHttpHeaders::WellKnownHeader::IfScheduleTagMatch | 84 |
QHttpHeaders::WellKnownHeader::IfUnmodifiedSince | 85 |
QHttpHeaders::WellKnownHeader::IM | 86 |
QHttpHeaders::WellKnownHeader::IncludeReferredTokenBindingID | 87 |
QHttpHeaders::WellKnownHeader::KeepAlive | 88 |
QHttpHeaders::WellKnownHeader::Label | 89 |
QHttpHeaders::WellKnownHeader::LastEventID | 90 |
QHttpHeaders::WellKnownHeader::LastModified | 91 |
QHttpHeaders::WellKnownHeader::Link | 92 |
QHttpHeaders::WellKnownHeader::Location | 93 |
QHttpHeaders::WellKnownHeader::LockToken | 94 |
QHttpHeaders::WellKnownHeader::MaxForwards | 95 |
QHttpHeaders::WellKnownHeader::MementoDatetime | 96 |
QHttpHeaders::WellKnownHeader::Meter | 97 |
QHttpHeaders::WellKnownHeader::MIMEVersion | 98 |
QHttpHeaders::WellKnownHeader::Negotiate | 99 |
QHttpHeaders::WellKnownHeader::NEL | 100 |
QHttpHeaders::WellKnownHeader::ODataEntityId | 101 |
QHttpHeaders::WellKnownHeader::ODataIsolation | 102 |
QHttpHeaders::WellKnownHeader::ODataMaxVersion | 103 |
QHttpHeaders::WellKnownHeader::ODataVersion | 104 |
QHttpHeaders::WellKnownHeader::OptionalWWWAuthenticate | 105 |
QHttpHeaders::WellKnownHeader::OrderingType | 106 |
QHttpHeaders::WellKnownHeader::Origin | 107 |
QHttpHeaders::WellKnownHeader::OriginAgentCluster | 108 |
QHttpHeaders::WellKnownHeader::OSCORE | 109 |
QHttpHeaders::WellKnownHeader::OSLCCoreVersion | 110 |
QHttpHeaders::WellKnownHeader::Overwrite | 111 |
QHttpHeaders::WellKnownHeader::PingFrom | 112 |
QHttpHeaders::WellKnownHeader::PingTo | 113 |
QHttpHeaders::WellKnownHeader::Position | 114 |
QHttpHeaders::WellKnownHeader::Prefer | 115 |
QHttpHeaders::WellKnownHeader::PreferenceApplied | 116 |
QHttpHeaders::WellKnownHeader::Priority | 117 |
QHttpHeaders::WellKnownHeader::ProxyAuthenticate | 118 |
QHttpHeaders::WellKnownHeader::ProxyAuthenticationInfo | 119 |
QHttpHeaders::WellKnownHeader::ProxyAuthorization | 120 |
QHttpHeaders::WellKnownHeader::ProxyStatus | 121 |
QHttpHeaders::WellKnownHeader::PublicKeyPins | 122 |
QHttpHeaders::WellKnownHeader::PublicKeyPinsReportOnly | 123 |
QHttpHeaders::WellKnownHeader::Range | 124 |
QHttpHeaders::WellKnownHeader::RedirectRef | 125 |
QHttpHeaders::WellKnownHeader::Referer | 126 |
QHttpHeaders::WellKnownHeader::Refresh | 127 |
QHttpHeaders::WellKnownHeader::ReplayNonce | 128 |
QHttpHeaders::WellKnownHeader::ReprDigest | 129 |
QHttpHeaders::WellKnownHeader::RetryAfter | 130 |
QHttpHeaders::WellKnownHeader::ScheduleReply | 131 |
QHttpHeaders::WellKnownHeader::ScheduleTag | 132 |
QHttpHeaders::WellKnownHeader::SecPurpose | 133 |
QHttpHeaders::WellKnownHeader::SecTokenBinding | 134 |
QHttpHeaders::WellKnownHeader::SecWebSocketAccept | 135 |
QHttpHeaders::WellKnownHeader::SecWebSocketExtensions | 136 |
QHttpHeaders::WellKnownHeader::SecWebSocketKey | 137 |
QHttpHeaders::WellKnownHeader::SecWebSocketProtocol | 138 |
QHttpHeaders::WellKnownHeader::SecWebSocketVersion | 139 |
QHttpHeaders::WellKnownHeader::Server | 140 |
QHttpHeaders::WellKnownHeader::ServerTiming | 141 |
QHttpHeaders::WellKnownHeader::SetCookie | 142 |
QHttpHeaders::WellKnownHeader::Signature | 143 |
QHttpHeaders::WellKnownHeader::SignatureInput | 144 |
QHttpHeaders::WellKnownHeader::SLUG | 145 |
QHttpHeaders::WellKnownHeader::SoapAction | 146 |
QHttpHeaders::WellKnownHeader::StatusURI | 147 |
QHttpHeaders::WellKnownHeader::StrictTransportSecurity | 148 |
QHttpHeaders::WellKnownHeader::Sunset | 149 |
QHttpHeaders::WellKnownHeader::SurrogateCapability | 150 |
QHttpHeaders::WellKnownHeader::SurrogateControl | 151 |
QHttpHeaders::WellKnownHeader::TCN | 152 |
QHttpHeaders::WellKnownHeader::TE | 153 |
QHttpHeaders::WellKnownHeader::Timeout | 154 |
QHttpHeaders::WellKnownHeader::Topic | 155 |
QHttpHeaders::WellKnownHeader::Traceparent | 156 |
QHttpHeaders::WellKnownHeader::Tracestate | 157 |
QHttpHeaders::WellKnownHeader::Trailer | 158 |
QHttpHeaders::WellKnownHeader::TransferEncoding | 159 |
QHttpHeaders::WellKnownHeader::TTL | 160 |
QHttpHeaders::WellKnownHeader::Upgrade | 161 |
QHttpHeaders::WellKnownHeader::Urgency | 162 |
QHttpHeaders::WellKnownHeader::UserAgent | 163 |
QHttpHeaders::WellKnownHeader::VariantVary | 164 |
QHttpHeaders::WellKnownHeader::Vary | 165 |
QHttpHeaders::WellKnownHeader::Via | 166 |
QHttpHeaders::WellKnownHeader::WantContentDigest | 167 |
QHttpHeaders::WellKnownHeader::WantReprDigest | 168 |
QHttpHeaders::WellKnownHeader::WWWAuthenticate | 169 |
QHttpHeaders::WellKnownHeader::XContentTypeOptions | 170 |
QHttpHeaders::WellKnownHeader::XFrameOptions | 171 |
QHttpHeaders::WellKnownHeader::AcceptCharset | 172 |
QHttpHeaders::WellKnownHeader::CPEPInfo | 173 |
QHttpHeaders::WellKnownHeader::Pragma | 174 |
QHttpHeaders::WellKnownHeader::ProtocolInfo | 175 |
QHttpHeaders::WellKnownHeader::ProtocolQuery | 176 |
Documentation des fonctions membres
[noexcept] QHttpHeaders::QHttpHeaders()
Crée un nouvel objet QHttpHeaders.
QHttpHeaders::QHttpHeaders(const QHttpHeaders &other)
Crée une copie de other.
[constexpr noexcept default] QHttpHeaders::QHttpHeaders(QHttpHeaders &&other)
Construit l'objet à partir de other, qui restera accessible à l'adresse empty.
[noexcept] QHttpHeaders::~QHttpHeaders()
Supprime l'objet « headers ».
bool QHttpHeaders::append(QAnyStringView name, QAnyStringView value)
Ajoute une entrée d'en-tête avec name et value et renvoie true en cas de succès.
Voir également append(QHttpHeaders::WellKnownHeader, QAnyStringView) et Allowed field name and value characters.
bool QHttpHeaders::append(QHttpHeaders::WellKnownHeader name, QAnyStringView value)
Cette fonction surcharge la méthode QHttpHeaders::append(QAnyStringView, QAnyStringView).
void QHttpHeaders::clear()
Efface toutes les entrées d'en-tête.
Voir aussi size().
QByteArray QHttpHeaders::combinedValue(QAnyStringView name) const
Renvoie les valeurs de l'en-tête name sous la forme d'une chaîne de caractères séparée par des virgules. Renvoie une erreur « null » QByteArray si l'en-tête name n'existe pas.
Remarque : l'accès aux valeurs de l'en-tête « Set-Cookie » de cette manière peut ne pas fonctionner comme prévu. Il s'agit d'une exception notable dans la spécification HTTP RFC, dans la mesure où ses valeurs ne peuvent pas être combinées de cette façon. Préférez plutôt la méthode values().
Voir également values(QAnyStringView).
QByteArray QHttpHeaders::combinedValue(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::combinedValue` (QAnyStringView).
bool QHttpHeaders::contains(QAnyStringView name) const
Indique si les en-têtes contiennent un en-tête « name ».
Voir également contains(QHttpHeaders::WellKnownHeader).
bool QHttpHeaders::contains(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode `QHttpHeaders::has(QAnyStringView)`.
[since 6.10] std::optional<QDateTime> QHttpHeaders::dateTimeValue(QAnyStringView name) const
Convertit la première valeur d'en-tête trouvée de type « name » en un objet « QDateTime », conformément aux formats de date HTTP standard. Si l'en-tête n'existe pas ou contient une valeur « QDateTime » non valide, la fonction renvoie « std::nullopt ».
Cette fonction a été introduite dans Qt 6.10.
Voir également setDateTimeValue(), dateTimeValues(QAnyStringView name) et dateTimeValueAt(qsizetype i).
[since 6.10] std::optional<QDateTime> QHttpHeaders::dateTimeValue(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::dateTimeValue` (QAnyStringView).
Cette fonction a été introduite dans Qt 6.10.
[since 6.10] std::optional<QDateTime> QHttpHeaders::dateTimeValueAt(qsizetype i) const
Convertit la valeur de l'en-tête à l'index i en un objet ` QDateTime ` respectant les formats de date HTTP standard. L'index i doit être valide.
Cette fonction a été introduite dans Qt 6.10.
Voir également dateTimeValue(nom de QAnyStringView) et dateTimeValues(nom de QAnyStringView).
[since 6.10] std::optional<QList<QDateTime>> QHttpHeaders::dateTimeValues(QAnyStringView name) const
Renvoie toutes les valeurs d'en-tête de name sous la forme d'une liste d'objets QDateTime, conformément aux formats de date HTTP standard. Si aucune valeur de date-heure valide n'est trouvée, renvoie std::nullopt.
Cette fonction a été introduite dans Qt 6.10.
Voir également dateTimeValue(QAnyStringView name) et dateTimeValueAt(qsizetype i).
[since 6.10] std::optional<QList<QDateTime>> QHttpHeaders::dateTimeValues(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::dateTimeValues` (QAnyStringView).
Cette fonction a été introduite dans Qt 6.10.
[static] QHttpHeaders QHttpHeaders::fromListOfPairs(const QList<std::pair<QByteArray, QByteArray>> &headers)
Crée un nouvel objet ` QHttpHeaders ` dont les propriétés sont renseignées avec ` headers`.
Voir également Allowed field name and value characters.
[static] QHttpHeaders QHttpHeaders::fromMultiHash(const QMultiHash<QByteArray, QByteArray> &headers)
Crée un nouvel objet ` QHttpHeaders ` dont les propriétés sont renseignées avec ` headers`.
Voir également Allowed field name and value characters.
[static] QHttpHeaders QHttpHeaders::fromMultiMap(const QMultiMap<QByteArray, QByteArray> &headers)
Crée un nouvel objet ` QHttpHeaders ` dont les propriétés sont renseignées avec ` headers`.
Voir également Allowed field name and value characters.
bool QHttpHeaders::insert(qsizetype i, QAnyStringView name, QAnyStringView value)
Insère une entrée d'en-tête à l'index i, avec name et value. L'index doit être valide (voir size()). Renvoie si l'insertion a réussi.
Voir également append(), insert(qsizetype, QHttpHeaders::WellKnownHeader, QAnyStringView), size() et Allowed field name and value characters.
bool QHttpHeaders::insert(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView value)
Cette fonction surcharge la méthode ` QHttpHeaders::insert` (qsizetype, QAnyStringView, QAnyStringView).
[noexcept, since 6.10] std::optional<qint64> QHttpHeaders::intValue(QAnyStringView name) const
Renvoie la valeur du premier en-tête valide name interprétée comme un entier de 64 bits. Si l'en-tête n'existe pas ou ne peut pas être analysé comme un entier, renvoie std::nullopt.
Cette fonction a été introduite dans Qt 6.10.
Voir également intValues(QAnyStringView name) et intValueAt(qsizetype i).
[noexcept, since 6.10] std::optional<qint64> QHttpHeaders::intValue(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::intValue` (QAnyStringView).
Cette fonction a été introduite dans Qt 6.10.
[noexcept, since 6.10] std::optional<qint64> QHttpHeaders::intValueAt(qsizetype i) const
Renvoie la valeur de l'en-tête interprétée comme un entier de 64 bits à l'index i. L'index i doit être valide.
Cette fonction a été introduite dans Qt 6.10.
Voir également ` intValues(nom de QAnyStringView)` et ` intValue(nom de QAnyStringView)`.
[since 6.10] std::optional<QList<qint64>> QHttpHeaders::intValues(QAnyStringView name) const
Renvoie les valeurs de l'en-tête name, interprétées comme des entiers 64 bits, sous forme de liste. Si l'en-tête n'existe pas ou ne peut pas être analysée comme un entier, la fonction renvoie std::nullopt.
Cette fonction a été introduite dans Qt 6.10.
Voir également intValue(QAnyStringView name) et intValueAt(qsizetype i).
[since 6.10] std::optional<QList<qint64>> QHttpHeaders::intValues(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::intValues` (QAnyStringView).
Cette fonction a été introduite dans Qt 6.10.
[noexcept] bool QHttpHeaders::isEmpty() const
Renvoie « true » si la taille des en-têtes est égale à 0 ; sinon, renvoie « false ».
Voir aussi size().
[noexcept] QLatin1StringView QHttpHeaders::nameAt(qsizetype i) const
Renvoie le nom de l'en-tête à l'index i. L'index i doit être valide (voir size()).
Les noms d'en-tête ne sont pas sensibles à la casse, et les noms renvoyés sont mis en minuscules.
Voir également size() et valueAt().
[since 6.12] std::optional<QHttpHeaderRangeSet> QHttpHeaders::rangeValues() const
Renvoie les plages des champs d'en-tête HTTP « Range », ou « std::nullopt » si l'analyse a échoué.
Chaque plage correspond à une plage d’octets. Conformément à la RFC 9110 :
- Si le début est spécifié mais pas la fin (par exemple, « bytes=500- »), l’ QHttpHeaderRangeSpec aura les valeurs suivantes :
start=500etend=std::nullopt. - Si la fin est spécifiée mais pas le début (par exemple, « bytes=-500 »), l’ QHttpHeaderRangeSpec aura les valeurs
start=std::nulloptetend=500, représentant les 500 derniers octets. - Si les deux sont spécifiés (par exemple, « bytes=0-499 »), l'QHttpHeaderRangeSpec ra
start=0etend=499.
Les plages sont renvoyées dans l’ordre dans lequel elles apparaissent dans les en-têtes.
L’analyse s’effectue comme suit :
- Si aucun en-tête «
Range» n’est présent, un ensemble de plages vide est renvoyé. - Conformément à la section 14.2 de la RFC 9110, tout en-tête «
Range» contenant une unité autre que « bytes » (par exemple, « seconds=1-2 ») est ignoré. Ces en-têtes ignorés n’entraînent pas l’échec de l’analyse. - Si un en-tête «
Range» utilise l’unité « bytes » mais est mal formé (par exemple, s’il manque le trait d’union, s’il contient des caractères non valides ou des nombres non valides), la fonction renvoie «std::nullopt».
Cette fonction a été introduite dans Qt 6.12.
Voir également setRangeValues et WellKnownHeader::Range.
void QHttpHeaders::removeAll(QAnyStringView name)
Supprime l'en-tête name.
Voir également removeAt() et removeAll(QHttpHeaders::WellKnownHeader).
void QHttpHeaders::removeAll(QHttpHeaders::WellKnownHeader name)
Cette fonction surcharge la méthode « QHttpHeaders::removeAll » (QAnyStringView).
void QHttpHeaders::removeAt(qsizetype i)
Supprime l'en-tête à l'index i. L'index i doit être valide (voir size()).
Voir également removeAll(QHttpHeaders::WellKnownHeader), removeAll(QAnyStringView) et size().
bool QHttpHeaders::replace(qsizetype i, QAnyStringView name, QAnyStringView newValue)
Remplace l'entrée d'en-tête à l'index i par name et newValue. L'index doit être valide (voir size()). Indique si le remplacement a réussi.
Voir également append(), replace(qsizetype, QHttpHeaders::WellKnownHeader, QAnyStringView), size() et Allowed field name and value characters.
bool QHttpHeaders::replace(qsizetype i, QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)
Cette fonction surcharge la méthode ` QHttpHeaders::replace` (qsizetype, QAnyStringView, QAnyStringView).
[since 6.8] bool QHttpHeaders::replaceOrAppend(QHttpHeaders::WellKnownHeader name, QAnyStringView newValue)
Si QHttpHeaders contient déjà name, cette fonction remplace sa valeur par newValue et supprime les éventuelles entrées supplémentaires de type name. Si name n'existe pas, elle ajoute une nouvelle entrée. Elle renvoie true en cas de réussite.
Cette fonction est une méthode pratique permettant de définir un en-tête unique de type ` name ` : ` newValue `. Pour la plupart des en-têtes, l'ordre relatif n'a pas d'importance, ce qui permet de réutiliser une entrée existante le cas échéant.
Cette fonction a été introduite dans Qt 6.8.
Voir aussi replaceOrAppend(QAnyStringView, QAnyStringView).
bool QHttpHeaders::replaceOrAppend(QAnyStringView name, QAnyStringView newValue)
Cette fonction surcharge la méthode QHttpHeaders::replaceOrAppend(WellKnownHeader, QAnyStringView).
void QHttpHeaders::reserve(qsizetype size)
Tente d'allouer de la mémoire pour au moins size entrées d'en-tête.
Si vous connaissez à l’avance le nombre d’entrées d’en-tête, vous pouvez appeler cette fonction pour éviter les réallocations et la fragmentation de la mémoire.
[since 6.10] void QHttpHeaders::setDateTimeValue(QAnyStringView name, const QDateTime &dateTime)
Définit la valeur de l'en-tête « name » sur « dateTime », conformément au format standard HTTP IMF-fixdate. Si l'en-tête n'existe pas, elle en crée une nouvelle.
Cette fonction a été introduite dans Qt 6.10.
Voir également dateTimeValue(QAnyStringView name) et dateTimeValueAt(qsizetype i).
[since 6.10] void QHttpHeaders::setDateTimeValue(QHttpHeaders::WellKnownHeader name, const QDateTime &dateTime)
Cette fonction surcharge la méthode QHttpHeaders::setDateTimeValue(QAnyStringView).
Cette fonction a été introduite dans Qt 6.10.
[since 6.12] void QHttpHeaders::setRangeValues(const QHttpHeaderRangeSet &ranges)
Définit le champ d'en-tête HTTP « Range » sur la liste spécifiée de ranges.
Les plages sont formatées en utilisant l’unité « octets », dans l’ordre dans lequel ranges les contient. Pour chaque QHttpHeaderRangeSpec:
- Une plage comportant uniquement un début (par exemple, QHttpHeaderRangeSpec(500, std::nullopt)) est formatée sous la forme
"500-". - Un intervalle ne comportant qu'une fin (par exemple, QHttpHeaderRangeSpec(std::nullopt, 500)) est formaté sous la forme
"-500", ce qui représente les 500 derniers octets. - Un intervalle comportant à la fois un début et une fin (par exemple, QHttpHeaderRangeSpec(0, 499)) est formaté sous la forme
"0-499".
Si plusieurs plages sont fournies, elles sont séparées par des virgules, par exemple : "bytes=0-499, 1000-".
Si ranges est vide, l’en-tête Range est supprimé.
Cette fonction a été introduite dans Qt 6.12.
Voir également rangeValues() et WellKnownHeader::Range.
[noexcept] qsizetype QHttpHeaders::size() const
Renvoie le nombre d'entrées d'en-tête.
[noexcept] void QHttpHeaders::swap(QHttpHeaders &other)
Remplace cette adresse QHttpHeaders par other. Cette opération est très rapide et ne pose jamais de problème.
QList<std::pair<QByteArray, QByteArray>> QHttpHeaders::toListOfPairs() const
Renvoie les entrées d'en-tête sous la forme d'une liste de paires (nom, valeur). La casse des noms d'en-tête n'a pas d'importance, et les noms renvoyés sont mis en minuscules.
QMultiHash<QByteArray, QByteArray> QHttpHeaders::toMultiHash() const
Renvoie les entrées d'en-tête sous forme de table associative, avec pour clés les noms et pour valeurs les valeurs correspondantes. La casse des noms d'en-tête n'a pas d'importance, et les noms renvoyés sont mis en minuscules.
QMultiMap<QByteArray, QByteArray> QHttpHeaders::toMultiMap() const
Renvoie les entrées d'en-tête sous la forme d'une carte associant un nom à une ou plusieurs valeurs. La casse des noms d'en-tête n'a pas d'importance, et les noms renvoyés sont mis en minuscules.
[noexcept] QByteArrayView QHttpHeaders::value(QAnyStringView name, QByteArrayView defaultValue = {}) const
Renvoie la valeur de l'en-tête (premier) name, ou defaultValue s'il n'existe pas.
Voir aussi value(QHttpHeaders::WellKnownHeader, QByteArrayView).
[noexcept] QByteArrayView QHttpHeaders::value(QHttpHeaders::WellKnownHeader name, QByteArrayView defaultValue = {}) const
Cette fonction surcharge la méthode ` QHttpHeaders::value` (QAnyStringView, QByteArrayView).
[noexcept] QByteArrayView QHttpHeaders::valueAt(qsizetype i) const
Renvoie la valeur de l'en-tête à l'index i. L'index i doit être valide (voir size()).
Voir également size(), value(), values(), combinedValue() et nameAt().
QList<QByteArray> QHttpHeaders::values(QAnyStringView name) const
Renvoie les valeurs de l'en-tête name sous forme de liste. Renvoie une liste vide si l'en-tête name n'existe pas.
Voir aussi ` values` (QHttpHeaders::WellKnownHeader).
QList<QByteArray> QHttpHeaders::values(QHttpHeaders::WellKnownHeader name) const
Cette fonction surcharge la méthode ` QHttpHeaders::values` (QAnyStringView).
[static noexcept] QByteArrayView QHttpHeaders::wellKnownHeaderName(QHttpHeaders::WellKnownHeader name)
Renvoie le nom d'un en-tête correspondant à l'name ion fournie en tant que vue.
[noexcept] QHttpHeaders &QHttpHeaders::operator=(QHttpHeaders &&other)
La fonction « move-assign » attribue la valeur other et renvoie une référence à cet objet.
other empty sera conservé.
QHttpHeaders &QHttpHeaders::operator=(const QHttpHeaders &other)
Attribue le contenu de ` other ` et renvoie une référence à cet objet.
Éléments non membres associés
[since 6.12] QDataStream &operator<<(QDataStream &out, const QHttpHeaders &headers)
Écrit ` headers ` dans le flux ` out `.
Cette fonction a été introduite dans Qt 6.12.
Voir également Sérialisation des types de données Qt.
QDebug operator<<(QDebug debug, const QHttpHeaders &headers)
Écrit headers dans le flux debug.
[since 6.12] QDataStream &operator>>(QDataStream &in, QHttpHeaders &headers)
Lit les en-têtes du flux in et les stocke dans headers.
Cette fonction a été introduite dans Qt 6.12.
Voir également Sérialisation des types de données Qt.
© 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.