XMLHttpRequestUpload: timeout-Ereignis
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Hinweis: Dieses Feature ist verfügbar in Web Workers, außer in Service Workers.
Das timeout
-Ereignis wird ausgelöst, wenn der Fortschritt aufgrund einer voreingestellten Zeitüberschreitung beendet wird.
Syntax
Verwenden Sie den Ereignisnamen in Methoden wie addEventListener()
oder setzen Sie eine Ereignis-Handler-Eigenschaft.
addEventListener("timeout", (event) => {});
ontimeout = (event) => {};
Ereignistyp
Ein ProgressEvent
. Erbt von Event
.
Ereigniseigenschaften
Zusätzlich zu den unten aufgeführten Eigenschaften sind auch Eigenschaften von der Schnittstelle Event
verfügbar.
lengthComputable
Nur lesbar-
Ein boolescher Wert, der anzeigt, ob das gesamte zu erledigende Arbeitspensum und die bereits geleistete Arbeit des zugrunde liegenden Prozesses berechenbar ist. Mit anderen Worten sagt es aus, ob der Fortschritt messbar ist oder nicht.
loaded
Nur lesbar-
Ein 64-Bit-unsigned Integer-Wert, der angibt, wie viel Arbeit vom zugrunde liegenden Prozess bereits ausgeführt wurde. Das Verhältnis der erledigten Arbeit kann berechnet werden, indem man
total
durch den Wert dieser Eigenschaft teilt. Beim Herunterladen einer Ressource über HTTP wird dabei nur der Körper der HTTP-Nachricht gezählt und nicht die Header und andere Überkopfkosten. total
Nur lesbar-
Ein 64-Bit-unsigned Integer, der die Gesamtmenge der Arbeit darstellt, die der zugrunde liegende Prozess auszuführen hat. Beim Herunterladen einer Ressource über HTTP ist dies die
Content-Length
(die Größe des Nachrichtentextes) und umfasst nicht die Header und andere Überkopfkosten.
Beispiele
Verwendung des timeout
-Ereignisses
Sie können das timeout
-Ereignis verwenden, um einen Upload zu erkennen, der gestoppt wurde, weil er zu langsam war. Ein vollständiges Codebeispiel, das den Upload einer Datei und die Anzeige einer Fortschrittsanzeige zeigt, finden Sie auf der Hauptseite von XMLHttpRequestUpload
.
Das Timeout wird am XMLHttpRequest
-Objekt mit der XMLHttpRequest.timeout
Eigenschaft festgelegt.
// In case of an timeout we hide the progress bar
// Note that this event can be listened to on the xhr object too
function errorAction(event) {
progressBar.classList.remove("visible");
log.textContent = `Upload failed: ${event.type}`;
}
xhr.upload.addEventListener("timeout", errorAction);
Spezifikationen
Specification |
---|
XMLHttpRequest Standard # event-xhr-timeout |
XMLHttpRequest Standard # handler-xhr-ontimeout |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Verwandte Ereignisse:
loadstart
,load
,progress
,error
,loadend
,abort
XMLHttpRequestUpload
XMLHttpRequest.timeout