Mientras mi página carga contenido mediante XHR, si el usuario hace clic en el botón de detener o hace clic para ir a otra página, se llama a la función XHR error(). Esto normalmente no sería un gran problema, excepto por la conmoción del usuario al ver muchos mensajes de error (rojos) en la página.Detectar error XHR realmente se debe a la detención del navegador o hacer clic en la página nueva
Los mensajes son válidos, hubo un error al recuperar el contenido, pero se debe a la interacción del usuario, no a causa de un error del sistema.
¿Existe alguna manera de distinguir entre un error de tiempo de espera (404 | 500 |) y un error causado por el hecho de que el usuario presionó el botón de detención del navegador?
EDITAR: Estoy usando Dojo (de ahí la referencia a la función de error), pero creo que esta sería una situación común en cualquier implementación de XHR. Voy a mirar en readyState del objeto xhr cuando el error() se llama
¿A qué "XHR error() función" se está refiriendo? No existe dicho método en las instancias 'XmlHttpRequest'. – JPot
parece que hay un evento "onerror" apoyado por "la mayoría" de los navegadores, al parecer. ref: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequestEventTarget/onerror – rogerdpack