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: Diese Funktion ist in Web Workers verfügbar, mit Ausnahme von 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.

js
addEventListener("timeout", (event) => {});

ontimeout = (event) => {};

Ereignistyp

Ereigniseigenschaften

Zusätzlich zu den unten aufgeführten Eigenschaften sind auch Eigenschaften von der Schnittstelle Event verfügbar.

lengthComputable Schreibgeschützt

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 Schreibgeschützt

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 Schreibgeschützt

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.

js
// 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
# event-xhr-timeout
XMLHttpRequest
# handler-xhr-ontimeout

Browser-Kompatibilität

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
timeout event

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

Siehe auch