" HTTP://www."在Uri.TryCreate错误?

时间:2014-10-26 17:22:58

标签: c# url uri

我从用户那里获取网址并检查此网址是否为有效网址。

首次检查输入“http://www。”<:p>上的网址失败

rawUrl = "http://www.";
Uri url;
if (!Uri.TryCreate(rawUrl, UriKind.Absolute, out url))
     throw new InvalidUrlException(inputUrl);

在这种情况下,TryCreate()返回 true 。有人能解释我为什么吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

“www。” URI的一部分是域名。

没有点的域名是不明确的。例如,“com”是指称为“com”的本地服务器还是顶级域“com”?

尾随点消除了歧义:“com。”是顶级域名。

所以http://www.指的是顶级域名“www”。即使此顶级域名尚不存在,它也是一个有效的URI。 (虽然它可能存在;我没有检查过。)