HTML5 - Gestione degli errori con Ajax

Sommario
Quando decidiamo che intraprenderemo la strada del lavoro con Ajax in HTML5Dobbiamo essere consapevoli che dobbiamo gestire i possibili errori che si verificano, in particolare abbiamo due tipi di errori che differiscono nella loro prospettiva.
Il primo tipo di errore è dato dal punto di vista dell'oggetto XMLHttpRequest ed è una situazione che impedisce l'esecuzione della richiesta, ad esempio il nome host non si risolve nel DNS, una connessione rifiutata o un URL non valido, ad esempio.
Il secondo tipo di errore è dato dal punto di vista della nostra applicazione, ma non ha nulla a che fare con l'oggetto XMLHttpRequest, ovvero è stata effettuata una richiesta, è stata accettata, elaborata e generata una risposta, tuttavia la risposta non era il contenuto previsto, ad esempio se l'URL specificato non esistesse.

Gestione degli errori di configurazione
Vediamo che il primo tipo di errore che dobbiamo gestire è quando passiamo i dati sbagliati all'oggetto XMLHttpRequest, qualcosa come un URL formato male, anche se sembra folle questo è un errore abbastanza comune quando lavoriamo con Ajax.
Ad esempio, vediamo la seguente chiamata che può portare a questo errore:
httpRequest.open ("GET", "http: //");

Affinché si verifichi un problema di questo tipo, di solito si verifica perché all'utente viene chiesto di inserire un valore o un dato con cui genereremo il URL e come sappiamo l'utente è il primo punto debole di un programma e affinché questo non ci riguardi dobbiamo sviluppare modi per convalidare e gestire qualsiasi tipo di contenuto che ci invia.
Per gestirlo usiamo un blocco prova a prendere che ci consente di eseguire il codice e se c'è un problema, catturiamo l'errore o l'eccezione e possiamo dargli una gestione adeguata, in questo caso di esempio quello che facciamo è mostrare l'errore, come possiamo vedere nel codice seguente , che riassumiamo e mostriamo solo le parti che interessano in questo particolare punto:
 prova {… httpRequest.open ("GET", "http: //");… httpRequest.send (); } catch (errore) {displayErrorMsg ("prova/cattura", errore.messaggio); } 

Dentro il blocco prendere Abbiamo la possibilità di salvare l'errore, per questo possiamo richiedere che i dati vengano nuovamente inseriti, inviare a una pagina in cui è indicato l'errore, ecc. L'importante è che la pagina non fallisca e il processo muoia inaspettatamente per l'utente.
Gestione degli errori di richiesta
Questo errore viene generato quando effettuiamo la richiesta ma c'è qualcosa che non va, ad esempio l'URL richiesto non si risolve nel DNS; Vediamo la seguente chiamata:
httpRequest.open ("GET", "http: //a.nodomain/doc.html");

In questo caso, l'URL non può essere risolto dal DNS, inoltre, poiché ha un'origine diversa rispetto al documento potrebbe anche interessarci, per gestire questo tipo di errori, utilizziamo una funzione che ci aiuta a gestirli, come quello che vediamo in questo esempio:
 funzione handleError (e) {displayErrorMsg ("Evento di errore", httpRequest.status + httpRequest.statusText); } 

L'unico punto che dobbiamo tenere a mente è che i browser non gestiscono le informazioni sull'oggetto httpRequest allo stesso modo, quindi la risposta potrebbe non essere la stessa.
Con questo finiamo il tutorial e abbiamo già un'idea migliore di come gestire e gestire gli errori che possono verificarsi in una richiesta Ajax e che possono far fallire la nostra pagina.Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo
wave wave wave wave wave