Satura rādītājs
Kad mēs veidojam lietojumprogrammu ar ASP.NET MVC un mēs to darām, izmantojot AJAX Mums ir jāievēro īpaša piesardzība, aplūkojot kļūdas, kuras mūsu programma var atgriezt.Ja pieprasījums neizdodas, mēs saņemsim a servera kļūda 500 ko lietotājam nav labi redzēt, vai varbūt mēs saņemam ziņojumu ar kļūdas izsekošanu no ASP.NET ka, ja mēs to neuzņemam, pirms tas nav redzams ārā, un ļaunprātīgs lietotājs var iegūt datus, lai tos izmantotu un uzbruktu mūsu vietnei.
Lai izvairītos no lielām problēmām, kad mūsu lietojumprogramma atgriež kļūdu, mums ir jārīkojas, lai tās apstrādātu kā izņēmumus, lai pirms kļūdas rašanās mūsu lietojumprogramma to uzzinātu un nosūtītu lietotājam draudzīgāku ziņojumu, kas neapdraud mūsu drošību.
A izņēmums rodas, ja daļa no mūsu koda mēģina veikt darbību un neizdodas, vai nu mēģinot vaicāt neesošiem datiem, vai tāpēc, ka mēs neapstiprinām kādu lietotāja datu ievadi, ja izmantojam AJAX Mēs varam saņemt kļūdu 500, bet arī tad, ja tas nenotiek un mūsu kontrolierim tiek piegādāti kļūdaini dati, mēs varam iegūt tādas kļūdas izsekošanu, kādu redzam šajā attēlā:
kļūdu pēdas Tie reti piedāvā izstrādātājam noderīgu informācijas apjomu, un, ja mēs neiztīrīsim, ko tas parādīs, mēs varam apdraudēt vietnes drošību, filtrējot konfigurācijas datus no mūsu lietojumprogrammas vai no mūsu servera.
Lai izvairītos no visām problēmām, kas var rasties, ja rodas kļūda ASP.NET mēs varam tikt galā ar tādām kļūdām kā izņēmumi un tāpēc mēs varam fiksēt kļūdu un nosūtīt personalizētu ziņojumu vai vienkārši nosūtīt atbildi, ka jūsu meklētā lapa neeksistē.
Ko lietotLai to izdarītu, mēs varam izmantot metodi HttpResponseException kas ļauj mums nodot kā parametru a HTTP kods piemēram, 404 lapa nav atrasta.
Nākamajā attēlā mēs redzam kodu, kas izmanto minēto metodi, lai apstrādātu izņēmumu. Apskatīsim:
PALIELINĀT
Lūk, kas notiek, ir pavisam vienkārši, vispirms mēs meklējam elementu pēc ID, ja tas atgriežas tukšs vai neeksistē, piemēram, mēs to apstiprinām ar nulli, mēs izveidosim kļūdas ziņojumu ar metodi HttpResponseException mēs iestatām kodu, kas nav atrasts, un sagatavojam pielāgotu ziņojumu, visbeidzot, mēs palaižam šo ziņojumu.Pateicoties tam mēs izvairāmies no tukšas vai tukšas atbildes nosūtīšanas uz mūsu pieteikumu kas varētu būt izraisījis tā sabojāšanos un nepareizi parādīt kļūdu, mēs arī nosūtījām lietotājam draudzīgāku ziņojumu, norādot, kāpēc viņa vaicājums neatdeva rezultātus.
Iegūstot personalizētu ziņojumu, mēs varam arī sniegt konkrētāku informāciju, ko izstrādātājs var izmantot, ir vieglāk zināt, ka produkts neeksistē, nekā pārskatīt 100 rindiņu izsekošanu, lai to uzzinātu.
Mēs pabeidzām apmācību, uzzinot nedaudz vairāk par riskiem, kas rodas, ja netiek apstrādātas kļūdas, kā arī iemācījāmies rīkoties, uzskatot tās par izņēmumiem.