Wenn eine Anforderung fehlschlägt, wird ein Server 500-Fehler angezeigt, der für den Benutzer nicht gut ist, oder es wird eine Meldung mit der Ablaufverfolgung des ASP.NET- Fehlers angezeigt , dass ein böswilliger Benutzer von außen gesehen werden kann, wenn er zuvor nicht erfasst wurde Ich könnte Daten erhalten, um sie zu nutzen und unsere Website anzugreifen.
Um größere Probleme zu vermeiden, wenn unsere Anwendung einen Fehler zurückgibt, müssen wir diese als Ausnahmen behandeln, damit unsere Anwendung dies vor dem Auftreten des Fehlers weiß und eine freundlichere Nachricht an den Benutzer sendet, die unsere Sicherheit nicht gefährdet.
Ausnahme
Eine Ausnahme tritt auf, wenn ein Teil unseres Codes versucht, eine Aktion auszuführen, und fehlschlägt, unabhängig davon, ob er versucht, nicht vorhandene Daten abzufragen, oder weil wir keine Benutzereingaben validieren. Wenn wir AJAX verwenden , wird möglicherweise ein Fehler 500 angezeigt, der jedoch auch nicht erfolgreich ist Wenn dies der Fall ist und fehlerhafte Daten an unseren Controller gesendet werden, erhalten wir möglicherweise eine Fehlerspur, wie sie in der folgenden Abbildung dargestellt ist:
Die Spuren von Fehlern bieten dem Entwickler selten eine Menge nützlicher Informationen. Wenn wir nicht bereinigen, was angezeigt wird, kann dies die Sicherheit der Site beeinträchtigen, wenn Konfigurationsdaten unserer Anwendung oder unseres Servers gefiltert werden.
Steuern Sie, was angezeigt wird
Um alle Probleme zu vermeiden, die beim Auftreten eines Fehlers in ASP.NET auftreten können, können wir diese Fehler als Ausnahmen behandeln und dazu den Fehler erfassen und eine personalisierte Nachricht senden oder einfach eine Antwort senden, dass die gesuchte Seite nicht vorhanden ist.
In der folgenden Abbildung sehen wir einen Code, der die genannte Methode verwendet, um die Ausnahme zu behandeln.
Hier ist es ganz einfach: Zuerst suchen wir nach dem Element anhand der ID. Wenn es leer oder nicht vorhanden ist, überprüfen wir es in unserem Beispiel mit null und erstellen eine Fehlermeldung. Mit der HttpResponseException- Methode erstellen wir einen Code von nicht gefunden und wir haben eine personalisierte Nachricht vorbereitet, schließlich haben wir diese Nachricht gestartet.
Aus diesem Grund vermeiden wir, dass eine leere oder leere Antwort an unsere Anwendung gesendet wird, die dazu führen könnte, dass sie irgendwann abbricht und einen Fehler falsch anzeigt. Außerdem senden wir dem Benutzer eine freundlichere Nachricht, in der angegeben wird, warum Ihre Abfrage keine Ergebnisse liefert .
Durch das Erhalten einer personalisierten Nachricht können wir auch spezifischere Informationen bereitstellen, die von einem Entwickler verwendet werden können. Dadurch wird es einfacher, zu erkennen, dass das Produkt nicht vorhanden ist, und eine Spur von 100 Zeilen zu überprüfen, um dasselbe herauszufinden.
Wir beendeten das Tutorial, nachdem wir ein wenig mehr über die Risiken des Nichthandhabens von Fehlern gelernt hatten und auch gelernt hatten, wie man mit Fehlern umgeht, indem man sie als Ausnahmen behandelte.