ASP.NET MVC - Manevrarea excepțiilor

Cuprins
Când construim o aplicație cu ASP.NET MVC și o facem folosind AJAX Trebuie să luăm o precauție specială atunci când ne uităm la erorile pe care programul nostru le poate întoarce.
Când o solicitare eșuează, vom primi un eroare de server 500 ceea ce nu este un lucru bun pentru utilizator să vadă sau poate primim un mesaj cu urmărirea erorii ASP.NET că dacă nu îl capturăm înainte ca acesta să poată fi văzut în exterior și un utilizator rău intenționat ar putea obține date pentru a-l utiliza și pentru a ataca site-ul nostru.
Pentru a evita problemele majore atunci când aplicația noastră returnează o eroare, trebuie să lucrăm la gestionarea acestora ca excepții, astfel încât înainte de apariția erorii, aplicația noastră să poată cunoaște acest lucru și să trimită un mesaj mai ușor de utilizat, care nu ne compromite securitatea.
A excepție apare atunci când o porțiune din codul nostru încearcă să efectueze o acțiune și eșuează, fie încercând să interogăm date inexistente, fie pentru că nu validăm unele date de utilizator, dacă folosim AJAX S-ar putea să primim o eroare de 500, dar, de asemenea, dacă acest lucru nu se întâmplă și o informație eronată ajunge la controlerul nostru, am putea obține o urmă de eroare precum cea pe care o vedem în următoarea imagine:

urme de eroare Rareori oferă o cantitate utilă de informații pentru dezvoltator și, dacă nu curățăm ce va arăta, putem compromite securitatea site-ului prin filtrarea datelor de configurare din aplicația noastră sau de pe serverul nostru.
Pentru a evita toate problemele care pot fi generate atunci când apare o eroare în ASP.NET putem rezolva erori precum excepții și pentru aceasta putem capta eroarea și trimite un mesaj personalizat sau pur și simplu trimite un răspuns că pagina pe care o căutați nu există.
Ce să folosescPentru a face acest lucru putem folosi metoda HttpResponseException care ne permite să trecem ca parametru a Cod HTTP like 404 page not found.
În imaginea următoare vedem un cod care folosește metoda menționată pentru a gestiona excepția, să vedem:

MARI

Aici ceea ce se întâmplă este destul de simplu, mai întâi căutăm elementul după id, în cazul în care acesta revine gol sau inexistent, de exemplu, îl validăm cu nul, vom stabili un mesaj de eroare, cu metoda HttpResponseException setăm un cod de ne-găsit și pregătim un mesaj personalizat, în cele din urmă lansăm acel mesaj.
Mulțumesc acestui lucru evităm să trimitem un răspuns nul sau gol la aplicația noastră ceea ce ar fi putut face ca acesta să se rupă la un moment dat și să afișeze o eroare incorect, am trimis utilizatorului un mesaj mai prietenos, în care să se spună de ce interogarea lor nu a returnat rezultate.
Prin obținerea unui mesaj personalizat, putem oferi, de asemenea, informații mai specifice pe care un dezvoltator le poate folosi, este mai ușor să știm că produsul nu există, decât să trebuiască să revizuim o urmă de 100 de linii pentru a afla același lucru.
Am terminat tutorialul după ce am învățat puțin mai mult despre riscurile de a nu trata erorile, precum și după ce am învățat cum să le tratăm tratându-le ca excepții.
wave wave wave wave wave