如何检查一个字符串是否是一个有效的HTTP URL?是一个、字符串、有效、URL

2023-09-02 21:21:57 作者:许你一世柔情

有该Uri.IsWellFormedUriString和 Uri.TryCreate 的方法,但他们似乎回到文件路径等。

我如何检查一个串是否有一个输入验证目的?

How do I check whether a string is a valid (not necessarily active) HTTP URL for input validation purposes?

推荐答案

试试这个验证的HTTP URL( uriName 是要测试的URI):

Try this to validate HTTP URLs (uriName is the URI you want to test):

Uri uriResult;
bool result = Uri.TryCreate(uriName, UriKind.Absolute, out uriResult) 
    && uriResult.Scheme == Uri.UriSchemeHttp;

或者,如果你想接受HTTP和HTTPS网址为有效(每J0e3gan的评论):

Or, if you want to accept both HTTP and HTTPS URLs as valid (per J0e3gan's comment):

Uri uriResult;
bool result = Uri.TryCreate(uriName, UriKind.Absolute, out uriResult) 
    && (uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);