Heim >Backend-Entwicklung >C++ >Wie kann ich HTTP- und HTTPS-URLs in C# zuverlässig validieren?

Wie kann ich HTTP- und HTTPS-URLs in C# zuverlässig validieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2025-01-09 13:51:41468Durchsuche

How Can I Reliably Validate HTTP and HTTPS URLs in C#?

Robuste Eingabevalidierung: Überprüfung von HTTP- und HTTPS-URLs in C#

Eine sichere Eingabevalidierung ist für jede Anwendung von entscheidender Bedeutung. Es reicht nicht aus, einfach zu prüfen, ob eine Zeichenfolge wie eine URL aussieht; Wir müssen sicherstellen, dass es sich um eine gültige HTTP- oder HTTPS-Adresse handelt. Methoden wie Uri.IsWellFormedUriString können irreführend sein, da sie Dateipfade als gültige URLs akzeptieren.

Eine präzisere Lösung

Dieser verbesserte Ansatz validiert HTTP- und HTTPS-URLs genau und verhindert so Schwachstellen:

<code class="language-csharp">Uri uriResult;
bool isValid = Uri.TryCreate(uriString, UriKind.Absolute, out uriResult) &&
               (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);</code>

Dieser Code verwendet Uri.TryCreate, um zu versuchen, die Eingabezeichenfolge (uriString) zu analysieren. UriKind.Absolute stellt sicher, dass nur absolute URLs akzeptiert werden. Die anschließende Prüfung stellt sicher, dass das Schema entweder http oder https ist, was eine gültige Webadresse garantiert. Das Ergebnis (isValid) ist ein boolescher Wert, der angibt, ob die Eingabe eine gültige HTTP- oder HTTPS-URL ist.

Diese Methode bietet eine zuverlässigere und sicherere Möglichkeit, URLs in C# zu validieren und verhindert so effektiv die Annahme potenziell schädlicher Eingaben.

Das obige ist der detaillierte Inhalt vonWie kann ich HTTP- und HTTPS-URLs in C# zuverlässig validieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn