Como detectar tempo limite em uma chamada AJAX (XmlHttpRequest) no navegador?

Estou procurando na web, mas a documentação é difícil de encontrar. Todos nós conhecemos a chamada básica do AJAX usando o built-in do navegadorXMLHttpRequest objeto (assuma um navegador moderno aqui):

<code>var xmlHttp = new XMLHttpRequest();  // Assumes native object

xmlHttp.open("GET", "http://www.example.com", false);

xmlHttp.send("");

var statusCode = xmlHttp.status;
// Process it, and I'd love to know if the request timed out
</code>

Então, há uma maneira que eu possa detectar que a chamada AJAX expirou, inspecionando o objeto XMLHttpRequest no navegador? Eu seria aconselhado a fazer algo comowindow.setTimeout(function() { xmlHttp.abort() }, 30000);?

Obrigado!

-Mike

questionAnswers(2)

yourAnswerToTheQuestion