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

如何在 C# 中可靠地驗證 HTTP 和 HTTPS URL?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-09 13:51:41416瀏覽

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。隨後的檢查將驗證該方案是 httphttps,從而確保有效的網址。 結果 (isValid) 是一個布林值,指示輸入是否為有效的 HTTP 或 HTTPS URL。

此方法提供了一種更可靠、更安全的方式來驗證 C# 中的 URL,有效防止接受潛在有害的輸入。

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

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