ホームページ >バックエンド開発 >C++ >C# で HTTP および HTTPS URL を確実に検証するにはどうすればよいですか?

C# で HTTP および HTTPS URL を確実に検証するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-09 13:51:41471ブラウズ

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

堅牢な入力検証: C# での HTTP および HTTPS URL の検証

安全な入力検証は、どのアプリケーションにとっても重要です。 単に文字列が URL に見えるかどうかをチェックするだけでは十分ではありません。 有効な HTTP または HTTPS アドレスであることを確認する必要があります。 Uri.IsWellFormedUriString のようなメソッドは、ファイル パスを有効な URL として受け入れるため、誤解を招く可能性があります。

より正確な解決策

この改善されたアプローチは、HTTP および HTTPS URL を正確に検証し、脆弱性を防止します。

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

このコードは、Uri.TryCreate を使用して入力文字列 (uriString) の解析を試みます。 UriKind.Absolute は、絶対 URL のみが受け入れられることを保証します。後続のチェックでは、スキームが http または https であることが検証され、有効な Web アドレスが保証されます。 結果 (isValid) は、入力が有効な HTTP または HTTPS URL であるかどうかを示すブール値です。

このメソッドは、C# で URL を検証するためのより信頼性が高く安全な方法を提供し、有害な可能性のある入力の受け入れを効果的に防ぎます。

以上がC# で HTTP および HTTPS URL を確実に検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。