wasm: allow useCredentials access control to be set

Introduce UseCredentialsAttribute that indicates whether
the underlying fetch/XMLHttpRequest should use credentials
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/withCredentials

Fixes: QTBUG-90893
Change-Id: I2c43e286db52df387c0a22737d027b9a2a8dd2d3
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
This commit is contained in:
Lorn Potter 2022-09-07 11:56:54 +10:00
parent 77646f668d
commit 2efd2f490c
3 changed files with 11 additions and 0 deletions

View File

@ -223,6 +223,9 @@ void QNetworkReplyWasmImplPrivate::doSendRequest()
request.attribute(QNetworkRequest::CacheSaveControlAttribute, false).toBool()) {
attr.attributes -= EMSCRIPTEN_FETCH_PERSIST_FILE;
}
if (request.attribute(QNetworkRequest::UseCredentialsAttribute, true).toBool()) {
attr.withCredentials = true;
}
attr.onsuccess = QNetworkReplyWasmImplPrivate::downloadSucceeded;
attr.onerror = QNetworkReplyWasmImplPrivate::downloadFailed;

View File

@ -305,6 +305,13 @@ QT_IMPL_METATYPE_EXTERN_TAGGED(QNetworkRequest::RedirectPolicy, QNetworkRequest_
This attribute is ignored if the Http2AllowedAttribute is not set.
(This value was introduced in 6.3.)
\value UseCredentialsAttribute
Requests only, type: QMetaType::Bool (default: false)
Indicates if the underlying XMLHttpRequest cross-site Access-Control
requests should be made using credentials. Has no effect on
same-origin requests. This only affects the WebAssembly platform.
(This value was introduced in 6.5.)
\value User
Special type. Additional information can be passed in
QVariants with types ranging from User to UserMax. The default

View File

@ -63,6 +63,7 @@ public:
AutoDeleteReplyOnFinishAttribute,
ConnectionCacheExpiryTimeoutSecondsAttribute,
Http2CleartextAllowedAttribute,
UseCredentialsAttribute,
User = 1000,
UserMax = 32767