Tratar um timeout de um pedido assíncrono.
Hoje pediram-me um desafio que era efectuar o tratamento de um timeout para um pedido assíncrono.
E descobri que a solução passa por adicionar ao código HTML um gestor de pedidos que validasse se o pedido efectuado caisse em timeout.
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(function (sender, args) {
if (args.get_error() && args.get_response().get_timedOut()) {
// Tratar o timeout
// colocar o errorHandled = true para evitar receber a popup gerada pela biblioteca de AJAX.
args.set_errorHandled(true);
}
});
O teste que efectuei foi parar a execução com o auxilio do debug e funcionou à primeira.