我从用户那里获得URL并检查这个URL是否有效的url。
对url的第一次检查在输入“http://www”上失败:
rawUrl = "http://www.";
Uri url;
if (!Uri.TryCreate(rawUrl, UriKind.Absolute, out url))
throw new InvalidUrlException(inputUrl);在本例中,TryCreate()返回true。有人能解释一下为什么吗?
谢谢。
发布于 2014-10-26 17:27:38
“www”URI的一部分是域名。
没有点的域名是不明确的。例如,"com“是指名为"com”的本地服务器还是顶级域"com"?
一个尾随点消除了歧义:“com”。是顶级域。
因此,http://www.指的是顶级域名"www“。即使这个顶级域还不存在,它也是一个有效的URI。(虽然它可能存在,但我还没有检查。)
https://stackoverflow.com/questions/26575776
复制相似问题