HTTP 和 HTTPS URL 的強大輸入驗證
常見的 URL 驗證方法(例如 Uri.IsWellFormedUriString
和 Uri.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中文網其他相關文章!