我正在尝试使用以下代码获取" https://google.com " 的主机地址:
var host = Dns.GetHostAddresses("https://google.com");
Run Code Online (Sandbox Code Playgroud)
但我得到一个例外:
{"No such host is known"}
Run Code Online (Sandbox Code Playgroud)
我在想,为什么我拿不到参赛作品?
不要https://只给予,google.com因为https://它不是主机名的一部分.
var host = Dns.GetHostAddresses("google.com");
Run Code Online (Sandbox Code Playgroud)
我在这里找到了很好的URL部分解释,摘录如下.
http://video.google.co.uk:80/videoplay?docid=-7246927612831078230&hl=en#00h02m30s
Run Code Online (Sandbox Code Playgroud)
以下是网址的一些组件:
- 该协议是http.其他协议包括https,ftp等.
- 主机或主机名是video.google.co.uk.
- 子域名是视频.
- 域名是google.co.uk.
- 顶级域名或顶级域名是英国.英国域名也称为国家/地区代码顶级域名或ccTLD.对于google.com,TLD将是com.
- 二级域名(SLD)是co.uk.
- 端口为80,这是Web服务器的默认端口.其他港口是可能的; 例如,Web服务器可以在端口8000上侦听.当端口是80时,大多数人都离开了端口.
- 路径是/ videoplay.路径通常是指Web服务器上的文件或位置,例如/directory/file.html
- 此URL包含参数.一个参数的名称是docid,该参数的值是-7246927612831078230.网址可以有很多参数.参数以问号(?)开头,并用&符号(&)分隔.请参阅"#00h02m30s"?这称为片段或命名锚.我所谈到的Google员工正在中间拆分,以便引用它.可以通过手臂摔跤,跳舞或喝酒比赛解决争议的问题.通常,片段用于指代Web文档中的内部部分.在这种情况下,命名锚意味着"跳到视频中的2分30秒."我想现在谷歌通过从网址中删除任何片段来标准化网址.