XMLHttpRequest.timeout

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.

La propiedad XMLHttpRequest.timeout es un unsigned long que representa el número de milisegundos que puede tomar una solicitud antes de que se finalice automáticamente. El valor por defecto es 0, lo que significa que no hay tiempo de espera (timeout). Timeout no debe utilizarse para solicitudes XMLHttpRequests sincrónicas usadas en un document environment, pues generará una excepción InvalidAccessError. Cuando ocurre un tiempo de espera, se dispara un evento timeout.

Nota: No puede usar un timeout para solicitudes sincrónicas con una ventana propietaria (owning window).

Uso de timeout con una solicitud asincrónica

En Internet Explorer, la propiedad timeout se puede establecer solo después de llamar al método open() y antes de llamar al método send().

Ejemplo

js
var xhr = new XMLHttpRequest();
xhr.open("GET", "/server", true);

xhr.timeout = 2000; // tiempo en milisegundos

xhr.onload = function () {
  // Solicitud finalizada. Haz el procesamiento aquí.
};

xhr.ontimeout = function (e) {
  // Tiempo de espera del XMLHttpRequest agotado. Haz algo aquí.
};

xhr.send(null);

Especificaciones

Specification
XMLHttpRequest Standard
# the-timeout-attribute

Compatibilidad con navegadores

BCD tables only load in the browser