37 ContentDispositionHeader,
40 IfModifiedSinceHeader,
49 HttpStatusCodeAttribute,
50 HttpReasonPhraseAttribute,
51 RedirectionTargetAttribute,
52 ConnectionEncryptedAttribute,
53 CacheLoadControlAttribute,
54 CacheSaveControlAttribute,
55 SourceIsFromCacheAttribute,
56 DoNotBufferUploadDataAttribute,
57 HttpPipeliningAllowedAttribute,
58 HttpPipeliningWasUsedAttribute,
60 CookieLoadControlAttribute,
61 AuthenticationReuseAttribute,
62 CookieSaveControlAttribute,
63 MaximumDownloadBufferSizeAttribute,
64 DownloadBufferAttribute,
65 SynchronousRequestAttribute,
66 BackgroundRequestAttribute,
67 EmitAllUploadProgressSignalsAttribute,
68 Http2AllowedAttribute,
69 Http2WasUsedAttribute,
70 OriginalContentLengthAttribute,
71 RedirectPolicyAttribute,
73 ResourceTypeAttribute,
74 AutoDeleteReplyOnFinishAttribute,
75 ConnectionCacheExpiryTimeoutSecondsAttribute,
76 Http2CleartextAllowedAttribute,
77 UseCredentialsAttribute,
78 FullLocalServerNameAttribute,
83 enum CacheLoadControl {
100 enum RedirectPolicy {
101 ManualRedirectPolicy,
102 NoLessSafeRedirectPolicy,
103 SameOriginRedirectPolicy,
104 UserVerifiedRedirectPolicy
107 enum TransferTimeoutConstant {
108 DefaultTransferTimeoutConstant = 30000
111 static constexpr auto DefaultTransferTimeout =
112 std::chrono::milliseconds(DefaultTransferTimeoutConstant);
115 explicit QNetworkRequest(
const QUrl &url);
116 QNetworkRequest(
const QNetworkRequest &other);
118 QNetworkRequest &operator=(QNetworkRequest &&other)
noexcept { swap(other);
return *
this; }
119 QNetworkRequest &operator=(
const QNetworkRequest &other);
121 void swap(QNetworkRequest &other)
noexcept { d.swap(other.d); }
123 bool operator==(
const QNetworkRequest &other)
const;
124 inline bool operator!=(
const QNetworkRequest &other)
const
125 {
return !operator==(other); }
128 void setUrl(
const QUrl &url);
130 QHttpHeaders headers()
const;
131 void setHeaders(
const QHttpHeaders &newHeaders);
132 void setHeaders(QHttpHeaders &&newHeaders);
135 QVariant header(KnownHeaders header)
const;
136 void setHeader(KnownHeaders header,
const QVariant &value);
139#if QT_NETWORK_REMOVED_SINCE(6
, 7
)
140 bool hasRawHeader(
const QByteArray &headerName)
const;
142 bool hasRawHeader(QAnyStringView headerName)
const;
143 QList<QByteArray> rawHeaderList()
const;
144#if QT_NETWORK_REMOVED_SINCE(6
, 7
)
145 QByteArray rawHeader(
const QByteArray &headerName)
const;
147 QByteArray rawHeader(QAnyStringView headerName)
const;
148 void setRawHeader(
const QByteArray &headerName,
const QByteArray &value);
151 QVariant attribute(Attribute code,
const QVariant &defaultValue = QVariant())
const;
152 void setAttribute(Attribute code,
const QVariant &value);
155 QSslConfiguration sslConfiguration()
const;
156 void setSslConfiguration(
const QSslConfiguration &configuration);
159 void setOriginatingObject(QObject *object);
160 QObject *originatingObject()
const;
162 Priority priority()
const;
163 void setPriority(Priority priority);
166 int maximumRedirectsAllowed()
const;
167 void setMaximumRedirectsAllowed(
int maximumRedirectsAllowed);
169 QString peerVerifyName()
const;
170 void setPeerVerifyName(
const QString &peerName);
172 QHttp1Configuration http1Configuration()
const;
173 void setHttp1Configuration(
const QHttp1Configuration &configuration);
175 QHttp2Configuration http2Configuration()
const;
176 void setHttp2Configuration(
const QHttp2Configuration &configuration);
178 qint64 decompressedSafetyCheckThreshold()
const;
179 void setDecompressedSafetyCheckThreshold(qint64 threshold);
182#if QT_CONFIG(http) || defined (Q_OS_WASM)
183 QT_NETWORK_INLINE_SINCE(6, 8)
184 int transferTimeout()
const;
185 QT_NETWORK_INLINE_SINCE(6, 8)
186 void setTransferTimeout(
int timeout);
188 std::chrono::milliseconds transferTimeoutAsDuration()
const;
189 void setTransferTimeout(std::chrono::milliseconds duration = DefaultTransferTimeout);
192 QSharedDataPointer<QNetworkRequestPrivate> d;
193 friend class QNetworkRequestPrivate;