QHttp2Configuration Class
Die Klasse „QHttp2Configuration“ steuert die HTTP/2-Parameter und -Einstellungen. Mehr...
| Header: | #include <QHttp2Configuration> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
| qmake: | QT += network |
- Liste aller Mitglieder, einschließlich geerbter Mitglieder
- QHttp2Configuration ist Teil der Netzwerkprogrammier-API und der implizit gemeinsam genutzten Klassen.
Hinweis: Alle Funktionen dieser Klasse sind reentrant.
Öffentliche Funktionen
| QHttp2Configuration() | |
| QHttp2Configuration(const QHttp2Configuration &other) | |
| QHttp2Configuration(QHttp2Configuration &&other) | |
| ~QHttp2Configuration() | |
| bool | huffmanCompressionEnabled() const |
(since 6.9) unsigned int | maxConcurrentStreams() const |
| unsigned int | maxFrameSize() const |
| bool | serverPushEnabled() const |
| unsigned int | sessionReceiveWindowSize() const |
| void | setHuffmanCompressionEnabled(bool enable) |
(since 6.9) void | setMaxConcurrentStreams(unsigned int value) |
| bool | setMaxFrameSize(unsigned int size) |
| void | setServerPushEnabled(bool enable) |
| bool | setSessionReceiveWindowSize(unsigned int size) |
| bool | setStreamReceiveWindowSize(unsigned int size) |
| unsigned int | streamReceiveWindowSize() const |
| void | swap(QHttp2Configuration &other) |
| QHttp2Configuration & | operator=(QHttp2Configuration &&other) |
| QHttp2Configuration & | operator=(const QHttp2Configuration &other) |
Verwandte Nicht-Mitglieder
| bool | operator!=(const QHttp2Configuration &lhs, const QHttp2Configuration &rhs) |
| bool | operator==(const QHttp2Configuration &lhs, const QHttp2Configuration &rhs) |
Ausführliche Beschreibung
QHttp2Configuration steuert die HTTP/2-Parameter und -Einstellungen, die von „ QNetworkAccessManager “ zum Senden von Anfragen und zum Verarbeiten von Antworten verwendet werden, wenn das HTTP/2-Protokoll aktiviert ist.
Zu den HTTP/2-Parametern, die QHttp2Configuration derzeit unterstützt, gehören:
- Die Größe des Sitzungsfensters für die Flusssteuerung auf Verbindungsebene. Wird bei Bedarf als „WINDOW_UPDATE“-Frames im Stream mit der Kennung 0 an einen entfernten Peer gesendet.
- Die Größe des Empfangsfensters für die Flusssteuerung auf Stream-Ebene. Wird als Parameter „SETTINGS_INITIAL_WINDOW_SIZE“ im anfänglichen SETTINGS-Frame gesendet; bei Bedarf werden „WINDOW_UPDATE“-Frames auf den von QNetworkAccessManager geöffneten Streams gesendet.
- Die maximale Frame-Größe. Dieser Parameter begrenzt die maximale Nutzlast, die ein vom entfernten Peer stammender Frame haben darf. Wird von QNetworkAccessManager als Parameter „SETTINGS_MAX_FRAME_SIZE“ im anfänglichen „SETTINGS“-Frame gesendet.
- Server-Push. Ermöglicht das Aktivieren oder Deaktivieren von Server-Push. Wird als Parameter „SETTINGS_ENABLE_PUSH“ im anfänglichen „SETTINGS“-Frame gesendet.
Die Klasse `QHttp2Configuration` steuert außerdem, ob der Header-Kompressionsalgorithmus (HPACK) zusätzlich die Huffman-Kodierung zur Zeichenfolgenkomprimierung verwendet.
Hinweis: Die Konfiguration muss festgelegt werden, bevor die erste Anfrage an einen bestimmten Host gesendet wird (und somit eine HTTP/2-Sitzung aufgebaut wird).
Siehe auch QNetworkRequest::setHttp2Configuration(), QNetworkRequest::http2Configuration() und QNetworkAccessManager.
Dokumentation der Mitgliedsfunktionen
QHttp2Configuration::QHttp2Configuration()
Standardmäßig wird ein QHttp2Configuration-Objekt erstellt.
Eine solche Konfiguration weist die folgenden Werte auf:
- Server-Push ist deaktiviert
- Huffman-Zeichenfolgenkomprimierung ist aktiviert
- Die Fenstergröße für die Flusssteuerung auf Verbindungsebene beträgt 65.535 Oktette
- Die Fenstergröße für die Flusssteuerung auf Stream-Ebene beträgt 65.535 Oktette
- Die Frame-Größe beträgt 16.384 Oktette
- Die maximal zulässige Größe der Header-Liste beträgt 262.144 Oktette (256 KiB)
QHttp2Configuration::QHttp2Configuration(const QHttp2Configuration &other)
Erstellt eine Kopie dieser `QHttp2Configuration`.
[noexcept] QHttp2Configuration::QHttp2Configuration(QHttp2Configuration &&other)
Erstellt diese QHttp2Configuration mithilfe von „Move“ aus other
[noexcept] QHttp2Configuration::~QHttp2Configuration()
Destruktor.
bool QHttp2Configuration::huffmanCompressionEnabled() const
Gibt „ true “ zurück, wenn die Huffman-Kodierung in HPACK aktiviert ist.
Siehe auch setHuffmanCompressionEnabled.
[since 6.9] unsigned int QHttp2Configuration::maxConcurrentStreams() const
Gibt die maximale Anzahl gleichzeitiger Streams zurück.
Diese Funktion wurde in Qt 6.9 eingeführt.
Siehe auch setMaxConcurrentStreams().
unsigned int QHttp2Configuration::maxFrameSize() const
Gibt die maximale Nutzdatengröße zurück, die HTTP/2-Frames haben können. Der Standardwert (Ausgangswert) beträgt 16384 Oktette.
Siehe auch ` setMaxFrameSize()`.
bool QHttp2Configuration::serverPushEnabled() const
Gibt „true“ zurück, wenn Server-Push aktiviert war.
Hinweis: Standardmäßig deaktiviert QNetworkAccessManager den Server-Push über den „SETTINGS“-Frame.
Siehe auch setServerPushEnabled.
unsigned int QHttp2Configuration::sessionReceiveWindowSize() const
Gibt die Fenstergröße für die Flusssteuerung auf Verbindungsebene zurück. Der Standardwert, den „ QNetworkAccessManager “ verwendet, beträgt 2147483647 Oktette.
Siehe auch setSessionReceiveWindowSize().
void QHttp2Configuration::setHuffmanCompressionEnabled(bool enable)
Wenn „ enable “ auf „ true “ gesetzt ist, komprimiert die HPACK-Komprimierung Zeichenfolgen zusätzlich mithilfe der Huffman-Kodierung. Standardmäßig aktiviert.
Hinweis: Dieser Parameter wirkt sich nur auf die von QNetworkAccessManager gesendeten „HEADERS“-Frames aus.
Siehe auch „ huffmanCompressionEnabled “.
[since 6.9] void QHttp2Configuration::setMaxConcurrentStreams(unsigned int value)
Legt „ value “ als maximale Anzahl gleichzeitiger Streams fest, die dem Peer beim Senden eines SETTINGS-Frames mitgeteilt werden.
Diese Funktion wurde in Qt 6.9 eingeführt.
Siehe auch maxConcurrentStreams().
bool QHttp2Configuration::setMaxFrameSize(unsigned int size)
Legt die maximale Frame-Größe fest, die QNetworkAccessManager dem Server beim Senden seines anfänglichen SETTINGS-Frames mitteilt.
Hinweis: Dieser Wert „ size “ musszwar im Bereich von 16384 bis einschließlich 16777215 liegen, die tatsächliche Nutzlastgröße in Frames, die eine Nutzlast enthalten, kann jedoch kleiner als 16384 sein.
Gibt bei Erfolg „ true “ zurück, andernfalls „ false “.
Siehe auch maxFrameSize().
void QHttp2Configuration::setServerPushEnabled(bool enable)
Wenn enable gleich true ist, kann ein Remote-Server möglicherweise Server-Push nutzen, um Antworten vorab zu senden.
Siehe auch serverPushEnabled.
bool QHttp2Configuration::setSessionReceiveWindowSize(unsigned int size)
Legt die Fenstergröße für die Flusssteuerung auf Verbindungsebene fest. „ size “ darf nicht 0 sein und muss 2147483647 Oktette nicht überschreiten.
Gibt bei Erfolg „ true “ zurück, andernfalls „ false “.
Siehe auch sessionReceiveWindowSize.
bool QHttp2Configuration::setStreamReceiveWindowSize(unsigned int size)
Legt die Fenstergröße für die Flusssteuerung auf Stream-Ebene fest. „ size “ darf nicht 0 sein und muss 2147483647 Oktette nicht überschreiten.
Gibt bei Erfolg „ true “ zurück, andernfalls „ false “.
Siehe auch streamReceiveWindowSize.
unsigned int QHttp2Configuration::streamReceiveWindowSize() const
Gibt die Fenstergröße für die Flusssteuerung auf Stream-Ebene zurück. Der Standardwert, den „ QNetworkAccessManager “ verwendet, beträgt 214748364 Oktette (siehe RFC 7540).
Siehe auch ` setStreamReceiveWindowSize()`.
[noexcept] void QHttp2Configuration::swap(QHttp2Configuration &other)
Tauscht diese Konfiguration gegen „ other “ aus. Dieser Vorgang ist sehr schnell und schlägt niemals fehl.
[noexcept] QHttp2Configuration &QHttp2Configuration::operator=(QHttp2Configuration &&other)
Weist „ other “ diesem „ QHttp2Configuration “ zu.
QHttp2Configuration &QHttp2Configuration::operator=(const QHttp2Configuration &other)
Weist „ other “ dieser „ QHttp2Configuration “ zu.
Verwandte Nichtmitglieder
[noexcept] bool operator!=(const QHttp2Configuration &lhs, const QHttp2Configuration &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ nicht denselben Satz an HTTP/2-Parametern aufweisen.
[noexcept] bool operator==(const QHttp2Configuration &lhs, const QHttp2Configuration &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ denselben Satz an HTTP/2-Parametern aufweisen.
© 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.