首頁 >後端開發 >C++ >如何可靠地驗證輸入中的 HTTP 和 HTTPS URL?

如何可靠地驗證輸入中的 HTTP 和 HTTPS URL?

Patricia Arquette
Patricia Arquette原創
2025-01-09 14:08:42321瀏覽

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

HTTP 和 HTTPS URL 的強大輸入驗證

常見的 URL 驗證方法(例如 Uri.IsWellFormedUriStringUri.TryCreate)有時無法可靠地區分有效的 HTTP URL 和其他檔案路徑。在驗證僅接受 HTTP 或 HTTPS URL 的使用者輸入時,這提出了重大挑戰。

更精確的方法:結合 URI 驗證與方案檢查

更強大的解決方案是將結構 URI 驗證與 HTTP 或 HTTPS 方案的特定檢查相結合:

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

此程式碼首先使用 Uri.TryCreate 驗證輸入字串 (uriString) 是否為格式良好的 URI。 如果成功,它會檢查 URI 的方案是否為 Uri.UriSchemeHttp.

擴充驗證以包含 HTTPS

要包含 HTTPS URL,只要展開方案比較即可:

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

此增強檢查接受 HTTP 和 HTTPS 協議,為您的輸入提供全面的 URL 驗證。

以上是如何可靠地驗證輸入中的 HTTP 和 HTTPS URL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn