ASP.NET MVC - zpracování výjimek

Obsah
Když vytváříme aplikaci pomocí ASP.NET MVC a děláme to pomocí AJAX Při sledování chyb, které náš program může vrátit, musíme učinit zvláštní opatření.
Pokud žádost selže, obdržíme a chyba serveru 500 což není dobré pro uživatele vidět, nebo možná dostaneme zprávu s trasováním chyb od ASP.NET že pokud jej nezachytíme dříve, než bude viděn venku, a uživatel se zlými úmysly by mohl získat data k jeho použití a útoku na naše stránky.
Abychom se vyhnuli velkým problémům, když naše aplikace vrátí chybu, musíme pracovat na jejich zpracování jako na výjimkách, takže než k chybě dojde, naše aplikace to bude vědět a vyvolá uživatelsky přívětivější zprávu, která neohrozí naše zabezpečení.
A výjimka nastane, když se část našeho kódu pokusí provést akci a selže, a to buď při pokusu o dotaz na neexistující data, nebo proto, že neověřujeme vstup některých uživatelských dat, pokud používáme AJAX Můžeme dostat chybu 500, ale také pokud se tak nestane a na náš řadič dorazí chybná data, můžeme získat stopu chyb, jako je ta, kterou vidíme na následujícím obrázku:

The stopy chyb Zřídka nabízejí vývojáři užitečné množství informací, a pokud nevyčistíme, co ukáže, můžeme ohrozit zabezpečení webu filtrováním konfiguračních dat z naší aplikace nebo z našeho serveru.
Aby se předešlo všem problémům, které mohou být generovány, když dojde k chybě v ASP.NET dokážeme zvládnout takové chyby jako výjimky a za tímto účelem můžeme chybu zachytit a odeslat přizpůsobenou zprávu nebo jednoduše poslat odpověď, že stránka, kterou hledáte, neexistuje.
Co použítK tomu můžeme použít metodu HttpResponseException což nám umožňuje předat jako parametr a HTTP kód stránka jako 404 nenalezena.
Na následujícím obrázku vidíme kód, který používá zmíněnou metodu ke zpracování výjimky, podívejme se:

ZVĚTŠIT

Zde je to, co se stane, celkem jednoduché, nejprve hledáme prvek podle id, v případě, že se vrátí prázdný nebo neexistuje, v našem případě jej ověříme pomocí null, pomocí metody vytvoříme chybovou zprávu HttpResponseException nastavíme kód nenalezen a připravíme vlastní zprávu, nakonec tuto zprávu spustíme.
Díky tomu vyhýbáme se odesílání nulové nebo prázdné odpovědi na naši aplikaci což mohlo způsobit, že se v určitém okamžiku rozbije a nesprávně zobrazí chybu, také jsme uživateli zaslali přívětivější zprávu, proč jejich dotaz nevrátil výsledky.
Získáním personalizované zprávy můžeme také poskytnout konkrétnější informace, které může vývojář použít, je snazší vědět, že produkt neexistuje, než kontrolovat stopu se 100 řádky a zjistit totéž.
Dokončili jsme tutoriál, když jsme se dozvěděli trochu více o rizicích neřešení chyb, a také jsme se naučili, jak s nimi zacházet tak, že s nimi budeme zacházet jako s výjimkami.

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave