Inhoudsopgave
Wanneer we een applicatie bouwen met ASP.NET MVC en we doen het met behulp van AJAX We moeten speciale voorzorgsmaatregelen nemen als we kijken naar de fouten die ons programma kan retourneren.Als een aanvraag mislukt, krijgen we een serverfout 500 wat niet goed is voor de gebruiker om te zien of misschien krijgen we een bericht met het foutspoor van ASP.NET dat als we het niet vastleggen voordat het buiten kan worden gezien en een kwaadwillende gebruiker gegevens kan verkrijgen om het te gebruiken en onze site aan te vallen.
Om grote problemen te voorkomen wanneer onze applicatie een fout retourneert, moeten we eraan werken deze als uitzonderingen te behandelen, zodat voordat de fout optreedt, onze applicatie dit kan weten en een gebruiksvriendelijker bericht kan geven dat onze veiligheid niet in gevaar brengt.
EEN uitzondering treedt op wanneer een deel van onze code een actie probeert uit te voeren en faalt, ofwel bij het opvragen van niet-bestaande gegevens of omdat we sommige invoer van gebruikersgegevens niet valideren, als we AJAX We kunnen een 500-fout krijgen, maar ook als dit niet gebeurt en er onjuiste gegevens bij onze controller aankomen, kunnen we een fouttracering krijgen zoals die we in de volgende afbeelding zien:
De fout sporen Ze bieden zelden een bruikbare hoeveelheid informatie voor de ontwikkelaar en als we niet opschonen wat het laat zien, kunnen we de veiligheid van de site in gevaar brengen door configuratiegegevens van onze applicatie of van onze server te filteren.
Om alle problemen te vermijden die kunnen ontstaan wanneer er een fout optreedt in ASP.NET we kunnen zulke fouten aan als: uitzonderingen en hiervoor kunnen we de fout vastleggen en een gepersonaliseerd bericht sturen of gewoon een reactie sturen dat de pagina die u zoekt niet bestaat.
Wat te gebruiken?Om dit te doen kunnen we de methode gebruiken: HttpResponseUitzondering waarmee we als parameter a . kunnen doorgeven HTTP-code like 404 pagina niet gevonden.
In de volgende afbeelding zien we een code die de genoemde methode gebruikt om de uitzondering af te handelen, laten we eens kijken:
VERGROTEN
Hier wat er gebeurt is vrij eenvoudig, eerst zoeken we naar het element op de id, in het geval dat het leeg of niet-bestaand retourneert, voor ons voorbeeld valideren we het met null, we gaan een foutmelding opstellen, met de methode HttpReactieUitzondering we stellen een code in van niet gevonden en bereiden een aangepast bericht voor, tot slot lanceren we dat bericht.Dankzij dit we vermijden het verzenden van een null of lege reactie op onze applicatie waardoor het op een gegeven moment kapot kon gaan en een fout onjuist kon weergeven, hebben we ook een vriendelijker bericht naar de gebruiker gestuurd waarin staat waarom hun zoekopdracht geen resultaten opleverde.
Door een gepersonaliseerd bericht te krijgen, kunnen we ook meer specifieke informatie geven die een ontwikkelaar kan gebruiken, het is gemakkelijker om te weten dat het product niet bestaat, dan om een trace van 100 regels te moeten beoordelen om hetzelfde te weten te komen.
We hebben de tutorial afgerond nadat we iets meer hadden geleerd over de risico's van het niet afhandelen van fouten, en ook hebben we geleerd hoe we ermee kunnen omgaan door ze als uitzonderingen te behandelen.