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

入力内の HTTP および HTTPS URL を確実に検証するにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-09 14:08:42
オリジナル
330 人が閲覧しました

How Can I Reliably Validate HTTP and HTTPS URLs in Input?

HTTP および HTTPS URL の堅牢な入力検証

Uri.IsWellFormedUriStringUri.TryCreate などの一般的な URL 検証方法では、有効な HTTP URL を他のファイル パスから確実に区別できないことがあります。これは、HTTP または HTTPS URL のみが受け入れられるユーザー入力を検証する際に、重大な課題となります。

より正確なアプローチ: URI 検証とスキームチェックの組み合わせ

より堅牢なソリューションには、構造 URI 検証と HTTP または HTTPS スキームの特定のチェックを組み合わせることが含まれます。

Uri uriResult;
bool isValidHttpUrl = Uri.TryCreate(uriString, UriKind.Absolute, out uriResult) && uriResult.Scheme == Uri.UriSchemeHttp;
ログイン後にコピー

このコードは、まず Uri.TryCreate を使用して、入力文字列 (uriString) が整形式の URI であることを検証します。 成功した場合は、URI のスキームが Uri.UriSchemeHttp であるかどうかを確認します。

HTTPS を含めるために検証を拡張します

HTTPS URL を含めるには、スキーム比較を展開するだけです:

Uri uriResult;
bool isValidHttpOrHttpsUrl = Uri.TryCreate(uriString, UriKind.Absolute, out uriResult) && (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);
ログイン後にコピー

この強化されたチェックは HTTP と HTTPS の両方のプロトコルを受け入れ、入力に対して包括的な URL 検証を提供します。

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

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート