Gestionarea erorilor și excepțiilor cu ASP.NET MVC

O aplicație web va avea multe calități, cu toate acestea, există o latură întunecată de care trebuie să fim conștienți, și anume că va avea multe erori, deși putem lua toate măsurile de precauție și putem face toate testele unitare, vor exista întotdeauna cazuri și situații pe care nu le-am văzut.care pot exploda într-un mediu de producție.

Când se declanșează o eroare fatală, ultimul lucru pe care îl dorim este ca utilizatorul să vadă mesajul de eroare pe care ni-l transmite. ASP.NET MVC, de aceea trebuie să învățăm să ne descurcăm greșeli Da excepții astfel încât să ne putem ghida aplicația despre cum să rezolvăm problema.

Tratarea unei erori în ASP.NET MVC


Când lucrăm cu cereri HTTP și cu introducerea utilizatorului ceva poate merge prost și este treaba noastră să încercăm să reducem la minimum acest lucru, deși nu vom putea cunoaște toate cazurile, dacă putem crea o componentă care să abordeze într-un mod special erorile pe care nu le cunoaștem .

Cadrul ne permite să stabilim pagini de eroare personalizate dacă activăm opțiunea corespunzătoare, deci dacă apare o eroare sau excepție că nu ne descurcăm, putem afișa o pagină mai puțin fatală decât cea clasică a ASP.NET MVC pe care o putem vedea în următoarea imagine:

Deși putem respinge mesajul, este ceva îngrijorător, dacă vedem codul sursă al locului în care s-a produs eroarea, acest lucru poate duce la găuri de securitate, deci este important ca această pagină să nu fie văzută niciodată în producție.

Pagina de eroare personalizată


Deși a nu avea erori este starea ideală, dar în sine este o utopie, așa că trebuie să trăim cu problema problemelor și că acestea vor apărea întotdeauna, în ASP.NET MVC putem avea trei modalități de a face față acestora.

primul este să afișăm pagina implicită pe care am văzut-o în imaginea anterioară în orice moment, așa că atunci când apare o eroare o vom vedea, cu toate riscurile pe care aceasta le implică. al doilea starea arată doar pagina noastră personalizată de erori, acest lucru ne ajută să nu lăsăm să apară codul sursă al aplicației.

Și în cele din urmă al treilea starea și una dintre cele mai utile, că doar pagina de eroare personalizată este văzută atunci când aplicația este accesată de la o adresă la distanță, acest ultim mod ne ajută la depanare, deoarece dacă rulăm aplicația și o navigăm în gazdă locală vom vedea pagina implicită a erorilor și astfel ne ajutăm reciproc cu toate detaliile, dar dacă este un client care se conectează de la o altă mașină, veți vedea numai eroarea personalizată.

Folosiți stăriPentru a utiliza aceste trei stări, trebuie doar să schimbăm directiva customErrors, cu valorile dezactivate, pornite și RemoteOnly Pentru fiecare dintre stările descrise mai sus, respectiv, putem plasa pagina personalizată a erorilor.

Să vedem în imaginea următoare un exemplu de cod pentru a regla această directivă a fișierului de configurare:

Vedem că putem seta anumite pagini la erori cunoscute, cum ar fi not found sau 404, o putem face și cu eroarea 500 și alte coduri, cu aceasta încheiem acest tutorial cu care am învățat puțin modul de bază de gestionare a erorilor în ASP.NET MVC.

V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv
wave wave wave wave wave